AJAX認証プロセスのベストプラクティスを知りたいのですが。
認証が有効な場合、応答「ok」でHTTPヘッダー200を返します。認証が無効な場合、サーバーから送信する必要のあるHTTPヘッダーは何ですか。
- HTTPヘッダーをコード500に設定する必要がありますか(エラー)
- または、200のままにして、応答変数をチェックするロジックを実装しますか?
AJAX認証プロセスのベストプラクティスを知りたいのですが。
認証が有効な場合、応答「ok」でHTTPヘッダー200を返します。認証が無効な場合、サーバーから送信する必要のあるHTTPヘッダーは何ですか。
500 エラーは、ユーザーが原因ではない予期しないサーバー側のエラーを意味するため、送信したくありません。
ステータス コードについては、rfc 仕様を参照してください。
http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
4XX ステータス コードはクライアント エラー用であり、これを確認する必要があります。あなたの場合、認証が失敗した場合は 401 を使用でき、そのユーザーがリソースの表示を許可されていない場合は 403 を使用できます。
HTTP401を返すのはどうですか?
必要に応じて、AJAXエラーハンドラーで処理し、ページ全体をログイン画面にリダイレクトできます。
$.ajax({
statusCode: {
401: function() {
alert("User not logged in");
}
}
});