Submit Search
Upload
EWD 3トレーニングコース#10 ewd-xpressのSessionとユーザー認証
•
Download as PPTX, PDF
•
0 likes
•
172 views
Kiyoshi Sawada
Follow
EWD 3トレーニングコース#10 ewd-xpressのSessionとユーザー認証
Read less
Read more
Software
Report
Share
Report
Share
1 of 18
Download now
Recommended
EWD 3トレーニングコース#10 ewd-xpressのSessionとユーザー認証
EWD 3トレーニングコース#10 ewd-xpressのSessionとユーザー認証
Kiyoshi Sawada
Symbol in the Cognition of Destiny
Symbol in the Cognition of Destiny
guest0446ff
EWD 3トレーニングコース#7 ewd-xpressメッセージ・パターンを適用する
EWD 3トレーニングコース#7 ewd-xpressメッセージ・パターンを適用する
Kiyoshi Sawada
Sortida A Ses PaïSses De Cala D’Hort
Sortida A Ses PaïSses De Cala D’Hort
gmprimaria3b
Travchip
Travchip
guestb4a4b14
Jade Magnet - Creative work for non-profits
Jade Magnet - Creative work for non-profits
Sitashwa Srivastava
Ashtiani Blink Write2 An Improved Text Entry Method Using Eye Blinks
Ashtiani Blink Write2 An Improved Text Entry Method Using Eye Blinks
Kalle
Jade Magnet Cases Healthcare
Jade Magnet Cases Healthcare
Sitashwa Srivastava
Recommended
EWD 3トレーニングコース#10 ewd-xpressのSessionとユーザー認証
EWD 3トレーニングコース#10 ewd-xpressのSessionとユーザー認証
Kiyoshi Sawada
Symbol in the Cognition of Destiny
Symbol in the Cognition of Destiny
guest0446ff
EWD 3トレーニングコース#7 ewd-xpressメッセージ・パターンを適用する
EWD 3トレーニングコース#7 ewd-xpressメッセージ・パターンを適用する
Kiyoshi Sawada
Sortida A Ses PaïSses De Cala D’Hort
Sortida A Ses PaïSses De Cala D’Hort
gmprimaria3b
Travchip
Travchip
guestb4a4b14
Jade Magnet - Creative work for non-profits
Jade Magnet - Creative work for non-profits
Sitashwa Srivastava
Ashtiani Blink Write2 An Improved Text Entry Method Using Eye Blinks
Ashtiani Blink Write2 An Improved Text Entry Method Using Eye Blinks
Kalle
Jade Magnet Cases Healthcare
Jade Magnet Cases Healthcare
Sitashwa Srivastava
EWD 3トレーニングコース#16 ewd-xpressサービス
EWD 3トレーニングコース#16 ewd-xpressサービス
Kiyoshi Sawada
Inlichtingenfunctie Presentatie 17 3 2010
Inlichtingenfunctie Presentatie 17 3 2010
BertilVoogd
Thuyet Trinh Tmdt
Thuyet Trinh Tmdt
guest447b2ed
Het nieuwe werken - 25 maart 2010
Het nieuwe werken - 25 maart 2010
slenskens
Eml14dec2010 publ
Eml14dec2010 publ
slenskens
Pendahuluan Komputer
Pendahuluan Komputer
guest32d3607
EWD 3トレーニングコース#7 ewd-xpressメッセージ・パターンを適用する
EWD 3トレーニングコース#7 ewd-xpressメッセージ・パターンを適用する
Kiyoshi Sawada
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
Kiyoshi Sawada
EWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化する
EWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化する
Kiyoshi Sawada
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
Kiyoshi Sawada
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
Kiyoshi Sawada
EWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化する
EWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化する
Kiyoshi Sawada
deviseを利用した認証について@Minamirb
deviseを利用した認証について@Minamirb
Jun Fukaya
20101110 Tech02 ID 管理およびサービスの設定
20101110 Tech02 ID 管理およびサービスの設定
kumo2010
第5回鹿児島node.jsの会資料_内村
第5回鹿児島node.jsの会資料_内村
Koichi Uchimura
EWD 3トレーニングコース#33 ewd-xpressアプリケーションからREST/Webサービスにアクセスする
EWD 3トレーニングコース#33 ewd-xpressアプリケーションからREST/Webサービスにアクセスする
Kiyoshi Sawada
EWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作る
EWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作る
Kiyoshi Sawada
EWD 3トレーニングコース#29 ewd-xpressをWindows上のサービスとして稼働させる
EWD 3トレーニングコース#29 ewd-xpressをWindows上のサービスとして稼働させる
Kiyoshi Sawada
EWD 3トレーニングコース#28 従来のMUMPSコードをewd-xpressと統合する
EWD 3トレーニングコース#28 従来のMUMPSコードをewd-xpressと統合する
Kiyoshi Sawada
EWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化-(h) EWD 3 セッション
EWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化-(h) EWD 3 セッション
Kiyoshi Sawada
EWD 3トレーニングコース#26 GlobalストレージのJavaScript用抽象化-(g) イベント駆動の索引管理
EWD 3トレーニングコース#26 GlobalストレージのJavaScript用抽象化-(g) イベント駆動の索引管理
Kiyoshi Sawada
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化-(f) Documentデータベースのできること
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化-(f) Documentデータベースのできること
Kiyoshi Sawada
More Related Content
Viewers also liked
EWD 3トレーニングコース#16 ewd-xpressサービス
EWD 3トレーニングコース#16 ewd-xpressサービス
Kiyoshi Sawada
Inlichtingenfunctie Presentatie 17 3 2010
Inlichtingenfunctie Presentatie 17 3 2010
BertilVoogd
Thuyet Trinh Tmdt
Thuyet Trinh Tmdt
guest447b2ed
Het nieuwe werken - 25 maart 2010
Het nieuwe werken - 25 maart 2010
slenskens
Eml14dec2010 publ
Eml14dec2010 publ
slenskens
Pendahuluan Komputer
Pendahuluan Komputer
guest32d3607
EWD 3トレーニングコース#7 ewd-xpressメッセージ・パターンを適用する
EWD 3トレーニングコース#7 ewd-xpressメッセージ・パターンを適用する
Kiyoshi Sawada
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
Kiyoshi Sawada
Viewers also liked
(8)
EWD 3トレーニングコース#16 ewd-xpressサービス
EWD 3トレーニングコース#16 ewd-xpressサービス
Inlichtingenfunctie Presentatie 17 3 2010
Inlichtingenfunctie Presentatie 17 3 2010
Thuyet Trinh Tmdt
Thuyet Trinh Tmdt
Het nieuwe werken - 25 maart 2010
Het nieuwe werken - 25 maart 2010
Eml14dec2010 publ
Eml14dec2010 publ
Pendahuluan Komputer
Pendahuluan Komputer
EWD 3トレーニングコース#7 ewd-xpressメッセージ・パターンを適用する
EWD 3トレーニングコース#7 ewd-xpressメッセージ・パターンを適用する
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
Similar to EWD 3トレーニングコース#10 ewd-xpressのSessionとユーザー認証
EWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化する
EWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化する
Kiyoshi Sawada
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
Kiyoshi Sawada
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
Kiyoshi Sawada
EWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化する
EWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化する
Kiyoshi Sawada
deviseを利用した認証について@Minamirb
deviseを利用した認証について@Minamirb
Jun Fukaya
20101110 Tech02 ID 管理およびサービスの設定
20101110 Tech02 ID 管理およびサービスの設定
kumo2010
第5回鹿児島node.jsの会資料_内村
第5回鹿児島node.jsの会資料_内村
Koichi Uchimura
Similar to EWD 3トレーニングコース#10 ewd-xpressのSessionとユーザー認証
(7)
EWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化する
EWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化する
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
EWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化する
EWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化する
deviseを利用した認証について@Minamirb
deviseを利用した認証について@Minamirb
20101110 Tech02 ID 管理およびサービスの設定
20101110 Tech02 ID 管理およびサービスの設定
第5回鹿児島node.jsの会資料_内村
第5回鹿児島node.jsの会資料_内村
More from Kiyoshi Sawada
EWD 3トレーニングコース#33 ewd-xpressアプリケーションからREST/Webサービスにアクセスする
EWD 3トレーニングコース#33 ewd-xpressアプリケーションからREST/Webサービスにアクセスする
Kiyoshi Sawada
EWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作る
EWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作る
Kiyoshi Sawada
EWD 3トレーニングコース#29 ewd-xpressをWindows上のサービスとして稼働させる
EWD 3トレーニングコース#29 ewd-xpressをWindows上のサービスとして稼働させる
Kiyoshi Sawada
EWD 3トレーニングコース#28 従来のMUMPSコードをewd-xpressと統合する
EWD 3トレーニングコース#28 従来のMUMPSコードをewd-xpressと統合する
Kiyoshi Sawada
EWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化-(h) EWD 3 セッション
EWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化-(h) EWD 3 セッション
Kiyoshi Sawada
EWD 3トレーニングコース#26 GlobalストレージのJavaScript用抽象化-(g) イベント駆動の索引管理
EWD 3トレーニングコース#26 GlobalストレージのJavaScript用抽象化-(g) イベント駆動の索引管理
Kiyoshi Sawada
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化-(f) Documentデータベースのできること
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化-(f) Documentデータベースのできること
Kiyoshi Sawada
EWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩く
EWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩く
Kiyoshi Sawada
EWD 3トレーニングコース#23 GlobalストレージのJavaScript用抽象化-(d) ノードの範囲を渡り歩く
EWD 3トレーニングコース#23 GlobalストレージのJavaScript用抽象化-(d) ノードの範囲を渡り歩く
Kiyoshi Sawada
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
Kiyoshi Sawada
EWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクト
EWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクト
Kiyoshi Sawada
EWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクト
EWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクト
Kiyoshi Sawada
EWD 3トレーニングコース#18 GlobalストレジでNoSQLデータベースをモデル化する
EWD 3トレーニングコース#18 GlobalストレジでNoSQLデータベースをモデル化する
Kiyoshi Sawada
EWD 3トレーニングコース#17 Globalストレジ・データベース入門
EWD 3トレーニングコース#17 Globalストレジ・データベース入門
Kiyoshi Sawada
EWD 3トレーニングコース#16 ewd-xpressサービス
EWD 3トレーニングコース#16 ewd-xpressサービス
Kiyoshi Sawada
EWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用する
EWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用する
Kiyoshi Sawada
EWD 3トレーニングコース#14 ewd-xpressメッセージ用にAjaxを用いる
EWD 3トレーニングコース#14 ewd-xpressメッセージ用にAjaxを用いる
Kiyoshi Sawada
EWD 3トレーニングコース#13 全てをひとつにまとめてewd-xpressで稼働させてみる
EWD 3トレーニングコース#13 全てをひとつにまとめてewd-xpressで稼働させてみる
Kiyoshi Sawada
EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御
EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御
Kiyoshi Sawada
EWD 3トレーニングコース#9 複雑なewd-xpressメッセージと応答
EWD 3トレーニングコース#9 複雑なewd-xpressメッセージと応答
Kiyoshi Sawada
More from Kiyoshi Sawada
(20)
EWD 3トレーニングコース#33 ewd-xpressアプリケーションからREST/Webサービスにアクセスする
EWD 3トレーニングコース#33 ewd-xpressアプリケーションからREST/Webサービスにアクセスする
EWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作る
EWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作る
EWD 3トレーニングコース#29 ewd-xpressをWindows上のサービスとして稼働させる
EWD 3トレーニングコース#29 ewd-xpressをWindows上のサービスとして稼働させる
EWD 3トレーニングコース#28 従来のMUMPSコードをewd-xpressと統合する
EWD 3トレーニングコース#28 従来のMUMPSコードをewd-xpressと統合する
EWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化-(h) EWD 3 セッション
EWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化-(h) EWD 3 セッション
EWD 3トレーニングコース#26 GlobalストレージのJavaScript用抽象化-(g) イベント駆動の索引管理
EWD 3トレーニングコース#26 GlobalストレージのJavaScript用抽象化-(g) イベント駆動の索引管理
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化-(f) Documentデータベースのできること
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化-(f) Documentデータベースのできること
EWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩く
EWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩く
EWD 3トレーニングコース#23 GlobalストレージのJavaScript用抽象化-(d) ノードの範囲を渡り歩く
EWD 3トレーニングコース#23 GlobalストレージのJavaScript用抽象化-(d) ノードの範囲を渡り歩く
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
EWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクト
EWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクト
EWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクト
EWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクト
EWD 3トレーニングコース#18 GlobalストレジでNoSQLデータベースをモデル化する
EWD 3トレーニングコース#18 GlobalストレジでNoSQLデータベースをモデル化する
EWD 3トレーニングコース#17 Globalストレジ・データベース入門
EWD 3トレーニングコース#17 Globalストレジ・データベース入門
EWD 3トレーニングコース#16 ewd-xpressサービス
EWD 3トレーニングコース#16 ewd-xpressサービス
EWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用する
EWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用する
EWD 3トレーニングコース#14 ewd-xpressメッセージ用にAjaxを用いる
EWD 3トレーニングコース#14 ewd-xpressメッセージ用にAjaxを用いる
EWD 3トレーニングコース#13 全てをひとつにまとめてewd-xpressで稼働させてみる
EWD 3トレーニングコース#13 全てをひとつにまとめてewd-xpressで稼働させてみる
EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御
EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御
EWD 3トレーニングコース#9 複雑なewd-xpressメッセージと応答
EWD 3トレーニングコース#9 複雑なewd-xpressメッセージと応答
EWD 3トレーニングコース#10 ewd-xpressのSessionとユーザー認証
1.
EWD 3 トレーニング・コース #10 ewd-xpressのSessionとユーザー認証 M/Gateway
Developments Ltd. Rob Tweed 訳: 日本ダイナシステム株式会社 嶋 芳成 GT.M版編集: 澤田 潔 ※ 本稿オリジナルはCache’向けとして編纂
2.
Session とユーザー認証 • 2つ別々の事柄があります •
アプリケーションが登録されると Session が生成され ます • ブラウザ/クライアントに結びつけられます • ユーザーは特定されません • ユーザー/個人との連結は「認証」によります • 通常は、ユーザー名とパスワードを入力することで認証が与 えられます 2016/9/30 EWD 3 トレーニング・コース #10 2
3.
ユーザー認証 • 対話型のアプリケーションでは、ログインの書式に加え てログイン・ボタンを設けるでしょう • ログイン・ボタンをクリックすると、それが引き金になって 書式のフィールドの値からユーザー名とパスワードを取り 出してメッセージとして送ります 2016/9/30
EWD 3 トレーニング・コース #10 3
4.
ユーザー認証 var messageObj =
{ type: ‘login’, params: { username: $(‘#username’).val(), password: $(‘#password’).val() } }; EWD.send(messageObj, function(responseObj) { // ユーザーが正しい資格を持っているかどうか // そのどちらの状況にも対応出来る処理をします }); 2016/9/30 EWD 3 トレーニング・コース #10 4
5.
ユーザー認証 • バックエンド・ハンドラーで、 login: function(messageobj,session,send,finished)
{ var username = messageObj.params.username; if (username === ‘’) { finished({error: ‘You must enter a username’); return; } var password = messageObj.params.password; if (password === ‘’) { finished({error: ‘You must enter a password’); return; } //認証データベースのレコードを参照してユーザー名とパスワードを検定する var status = checkLogin(username, password); //これで良い if (status.ok) { finished({ok:true}); } else { //ログインできなかった理由を示すエラー・メッセージ文字列を返す finished({error: status.error}); } } 2016/9/30 EWD 3 トレーニング・コース #10 5
6.
ユーザー認証 • ブラウザでエラー応答メッセージを処理することについて は後で解説します • 今は、ログインが成功したものとして考えます •
ユーザー・インターフェースを変更します • ログイン・フォームを消去します • ユーザーの目的ページとメイン・メニューに入ります 2016/9/30 EWD 3 トレーニング・コース #10 6
7.
ユーザー認証 • ユーザーは、バックエンドの情報と対話するためにメッ セージを送信することができます • 可能性としてはユーザーのプロフィールや役割によって何らか の制限があるかもしれません •
しかし、悪意のあるユーザーがログインせずに JavaScriptコンソールで、これらのメッセージを送ろうと したときにそれを阻止するにはどうしたら良いでしょうか • 技術的には何もありません 2016/9/30 EWD 3 トレーニング・コース #10 7
8.
ユーザー認証 • ユーザーは、バックエンドの情報と対話するためにメッ セージを送信することができます • 可能性としてはユーザーのプロフィールや役割によって何らか の制限があるかもしれません •
しかし、悪意のあるユーザーがログインせずに JavaScriptコンソールで、これらのメッセージを送ろうと したときにそれを阻止するにはどうしたら良いでしょうか • 技術的には何もありません • 従って、これが認証の目的です • Session の特別な真偽値のプロパティ: authenticated 2016/9/30 EWD 3 トレーニング・コース #10 8
9.
ユーザー認証 • バックエンドのハンドラーで、 login: function(messageobj,session,send,finished)
{ var username = messageObj.params.username; if (username === ‘’) { finished({error: ‘You must enter a username’); return; } var password = messageObj.params.password; if (password === ‘’) { finished({error: ‘You must enter a password’); return; } //認証データベースのレコードを参照してユーザー名とパスワードを検定する var status = checkLogin(username, password); //これで良い if (status.ok) { session.authenticated = true; finished({ok:true}); } else { finished({error: status.error}); //ログインできなかった理由を示すエラー・メッセージ文字列を返す } } 2016/9/30 EWD 3 トレーニング・コース #10 9
10.
ユーザー認証 • 他のバックエンド・ハンドラーでは、 someType: function(messageObj,session,send,finished)
{ if (!session.authenticated) { finished({error: ‘You do not have access to this message type’}); return; } // 認証されたユーザーのみについてメッセージを処理する } 2016/9/30 EWD 3 トレーニング・コース #10 10
11.
ユーザー認証 • 他のバックエンド・ハンドラーでは、 someType: function(messageObj,session,send,finished)
{ if (!session.authenticated) { finished({error: ‘You do not have access to this message type’}); return; } // 認証されたユーザーのみについてメッセージを処理する } 2016/9/30 EWD 3 トレーニング・コース #10 11 これによってこのアプリケーションのバックエンド・メソッドは、ログインせず にハッキングすることから保護できるようになりました
12.
ユーザー認証 • 再認証することを防止するのは良い考えです login: function(messageobj,session,send,finished)
{ if (session.authenticated) { finished({eror: ‘You are already logged in’}); return; } var username = messageObj.params.username; if (username === ‘’) { finished({error: ‘You must enter a username’); return; } var password = messageObj.params.password; if (password === ‘’) { finished({error: ‘You must enter a password’); return; } //認証データベースのレコードを参照してユーザー名とパスワードを検定する var status = checkLogin(username, password); //これで良い if (status.ok) { session.authenticated = true; finished({ok:true}); } else { finished({error: status.error}); //ログインできなかった理由を示すエラー・メッセージ文字列を返す } } 2016/9/30 EWD 3 トレーニング・コース #10 12
13.
ログ・アウト • 普通は不要です • もしユーザーがアプリケーションを十分長時間使わなければ、 Session
は時間切れになります • エラー・メッセージが返されます • WebSocket の接続は切断されます • ソケットの接続切断に対してハンドラーを用意することもできます • ewd-session は、結局自動的に、そのユーザーに対する Session グローバルを消去します 2016/9/30 EWD 3 トレーニング・コース #10 13
14.
実行してみましょう 2016/9/30 EWD 3
トレーニング・コース #10 14
15.
app.js を編集する $(document).ready(function() { EWD.log
= true; EWD.on(‘ewd-registered’, function() { EWD.on(‘intermediate’, function(responseObj) { $(‘#content’).text(responseObj.message.date); }); EWD.on(‘socketDisconnected’, function() { $(‘#content’).text(‘You have been logged out’); $(‘#testBtn’).hide(); }); $(‘#testBtn’).on(‘click’, function(e) { var message = {type: ‘testButton’); EWD.send(message, function(messageObj) { $(‘#content’).append(‘<br />’ + messageObj.message.ok); }); }); }); EWD.start(‘demo1’, $, io); }); 2016/9/30 EWD 3 トレーニング・コース #10 15 Socketが切断された場合のハンドラーを追加します
16.
実行してみましょう 2016/9/30 EWD 3
トレーニング・コース #10 16
17.
新しいセッションを再始動する $(document).ready(function() { EWD.log =
true; EWD.on(‘ewd-registered’, function() { EWD.on(‘intermediate’, function(responseObj) { $(‘#content’).text(responseObj.message.date); }); EWD.on(‘socketDisconnected’, function() { $(‘#content’).text(‘You have been logged out’); $(‘#testBtn’).hide(); setTimeout (function() { location.reload(); }, 1000); }); $(‘#testBtn’).on(‘click’, function(e) { var message = {type: ‘testButton’); EWD.send(message, function(messageObj) { $(‘#content’).append(‘<br />’ + messageObj.message.ok); }); }); }); EWD.start(‘demo1’, $, io); }); 2016/9/30 EWD 3 トレーニング・コース #10 17
18.
マニュアルでsocket接続を切断する • 明確なログアウトを必要とする場合 • マニュアルでWebSocket接続を切断します •
app.js 内に次のコードを入れます EWD.disconnectSocket(); • これは、socketDisconected イベントでも起動されます 2016/9/30 EWD 3 トレーニング・コース #10 18
Download now