Progress作業メモ
TODO
- wsチャットサーバ、ws
- 認証token発行API、hapi
- token認証をチャットサーバーに追加、ws
wsチャットサーバ
- webにあるサンプルみたいなのはできた。
- wsの認証&idとconnectionのhashをどこで作るか考えた。
パフォーマンス的には、handleUpgrade()をoverrideするのが良いと思った。ただ大変そうなので、カスタム認証用に用意されているverifyClient()に書けばいい。と思ったら、verifyClient()が呼ばれる段階では、connection(コード上はclient)が作られてない。なので結局、'connection'eventで拾う。まとめ。認証はverifyClient()に書く。idとconnectionとのhashは、'connection'イベント処理に書く。
Handshakeリクエスト時にブラウザ上のjsが変更できるHTTP Headerは、resource-name/pathと、WebSocket-Protocolだけらしい。酷い。tokenは、WebSocket-Protocolに突っ込むのがいいのか、parameterとして送るべきか。大差ない。どっちでも送れた。やった。
明日以降TODO
- 認証token発行API、hapi
- token認証をチャットサーバーに追加、ws
- ルーム機能をつくる、ws
今日のコード
汚くてもどんどん書いていこう