0

ユーザーが既にサーバーで認証されている場合、XMLHttpRequest を使用してどのように判断するのか興味がありますか? リクエストを送信してデータを返すことはできますが、ページを更新してデータを再度リクエストすると、セッション タイムアウトが期限切れになっていないにもかかわらず、ログオン フォームが起動します。

何かご意見は?

ありがとうクリス

4

1 に答える 1

0

ここにはいくつかのオプションがあります。多くの場合、サーブは認証されていないリクエストに対してログインフォームで応答します。したがって、JSONをフェッチするAJAXリクエストを作成している場合は、応答のコンテンツタイプalaを確認するだけですxhr.getResponseHeader('Content-Type')。認証された応答はのようなものである必要がありますがapplication/json、認証されていない応答はtext/html(またはそのようなもの)になります。

しかし...document.cookieユーザーがセッションCookieを定義しているかどうかを確認することもできます。これは防弾チェックではありませんが(Cookieが無効であるか、サーバーに追加のチェックがあり、それでもリクエストが失敗する可能性があります)、不合理なチェックではありません。

于 2012-12-20T17:20:06.013 に答える