0

ダイジェスト認証で Restlet を使用しています。うまくいきます。ただし、最初に 401 が返されたときにブラウザの認証ダイアログがポップアップしないようにすることで、もう少し ajax/Javascript に適したものにしたいと考えています。

これは私がうまくいくと思うものです:

  1. テキストフィールドを使用して取得され、javascript オブジェクトに格納されたユーザー/パス。
  2. リソースを保護するための Ajax 呼び出し。
  3. Reselt は非 401 コード (たとえば 406) を Digest Auth 情報と共に送り返します。
  4. Javascript はコードをキャッチし、リクエスト/ユーザー/パスワードをハッシュにパッケージ化し、restlet に送信します。

a) 上記は機能しますか?

b) Restlet で Digest を使用して別のステータス コードを送信するにはどうすればよいですか?

4

1 に答える 1

1

はい、401 以外の応答を返す必要があります。これは、ブラウザーが常にポップアップを表示するという点でブラウザーの動作を変更できないためです。

ブラウザが基本認証ポップアップを呼び出さないようにし、Jquery を使用して 401 エラーを処理する方法も参照してください。

DigestAuthenticator を変更/オーバーライドして別の応答を設定するか、401 を検出して別のステータスに切り替えるフィルターを使用して、応答を変更します。

于 2013-04-06T20:58:57.930 に答える