5

私は Spring/JavaEE Web プログラマーであり、将来の Web アプリケーションのために REST の原則を調査し始めていますが、使用可能なログインを行う方法がわかりません。Web API の場合は理にかなっていますが、エンド ユーザー向けの Web アプリケーションについてはどうでしょうか。HTTP 基本/ダイジェスト認証を調べましたが、見苦しいダイアログ ボックスしか表示されません。誰にもアイデアはありますか?

4

1 に答える 1

2

それは、フォームベースのログインにどのようにアプローチするかによって大きく異なります。

J2EE仕様で定義されているように、ログインページは、保護されたリソースにアクセスしようとしたときに(まだ認証されている)ユーザーにのみ表示されます。それ自体ではアクセスできません (またはアクセスするべきではありません)。そのシナリオでは、ログイン ページはそれ自体が「リソース」ではないため、REST 原則によって管理される必要はありません。つまり、ワークフローは次のとおりです。

  1. ユーザーが REST URL '/products/0332425' を取得しようとする
  2. ユーザーは「/login」にリダイレクトされ、資格情報を POST し、(GET として) 元のページ (「/products/0332425」) にリダイレクトされます。
  3. その後「/login」にアクセスしようとすると、エラー (403?) が発生するか、「root」にリダイレクトされます。

それがうまくいかず、複数のページでログイン フォームを利用できるようにする必要がある場合は、他の POST と同様に、ページの一部として扱い、送信してください。

于 2009-09-24T20:57:18.387 に答える