RESTful Webアプリで新しいHttpSessionを作成するにはどうすればよいですか?
-
12-09-2019 - |
質問
クライアントが特定の UI を呼び出すたびに、(Cookie 経由で) HttpSession を作成する必要があります。
仮定:
- oAuth のような深い認証ダンスについては心配しないと仮定しましょう。JESSIONSID Cookie の偽装は、現時点では問題になりません。
- サーバーは tomcat であるため、新しいセッションが作成されると、JSESSIONID Cookie がクライアントに送信されます。
設計上の問題:
- URIをどう設計するかで悩んでいます。REST リソースとは実際には何ですか?私は既に持っています /ユーザー そして /users/{someuserid}. 。使いたかった /認証/ログイン しかし、以前の SO の質問で、 引用記事 URLに動詞を含めるべきではないと言っています。気づいたことさえある Googleも同じ間違いを犯す 持つことによって https://www.google.com/accounts/OAuthGetRequestToken. 。したがって、あなたの意見では、 /認証/ログイン/ジョンドー (ログイン)そして /auth/ログアウト/ジョンドー (ログアウト) 良い選択肢はありますか?
アップデート:
デザインを変更しました。現在、URI を使用することを考えています。 /セッション/ジョンドー (置く ログイン用に、 消去 ログアウト用)。それは依然として REST 精神の制限内にあるはずです?
解決 2
セッションを認識する REST エンドポイントを作成中です。私は以下を標準化しました:
- POST /sessions => 場所を返します: http://server/api/sessions/1qazwsxcvdf
- DELETE /sessions/1qazwsxcvdf => セッションを無効にします
うまく機能しています。
他のヒント
RESTスタイルのアーキテクチャで無関係のセッションではないか。
所属していません StackOverflow