2016-04-18 20 views
1

私はAPIエンドポイントを持っており、リクエストにはクッキー(認証ではない)が必要です。存在しない場合、正しいHTTPステータスコードは何になりますか?リクエストに必要なCookieが見つからない場合は、適切なHTTPステータスコードは何ですか?

私は400と思われます。悪い要求が最高です。

+1

http://racksburg.com/choosing-an-http-status-code/ – CodeCaster

+0

これは非常に有用な投稿です。ありがとうございます。私はそれが私の質問に答えるようではないと言います。私は400レベルに達し、ヘッダーのリストを見る。クッキーはセットクッキーヘッダーに格納されていて、リストには表示されない。 – Timigen

答えて

3

ませずっと詳細は、あなたの質問に設けられていないが、私は400(不正なリクエスト)を推測しているが、良いオプションです:

6.5.1. 400 Bad Request

400(悪いRequest)ステータスコードは、サーバーがないことを示しますまたは は、 と認識されているもの(たとえば、不正なリクエスト構文、無効なリクエスト メッセージフレーミング、または不正なリクエストルーティングなど)のためにリクエストを処理しません。

11.2. 422 Unprocessable Entity

しかし、あなたの要件に応じて、あなたはまた、HTTPプロトコルの単なる延長であるWebDAV仕様で定義され、422(処理不能エンティティ)ステータスコードを検討することもでき

422(処理不可能なエンティティ)ステータスコードは、サーバ が故に要求エンティティのコンテンツタイプ( 415(サポートされていないメディアを理解手段タイプ)のステータスコードが不適切である)、リクエストエンティティの の構文が正しいため(400(不正リクエスト) ステータスコードは不適切です)、含まれている 命令を処理できませんでした。例えば、このエラー状態は、XML リクエストボディが、整形式(すなわち、構文的に正しい)が、意味的に誤りのあるXML命令 を含む場合に発生し得る。


だけ要求に何が不足しているかを説明する応答ペイロードに適切な説明を提供覚えています。

-1

この状況のステータスコードは403 forbiddenと考えられます。他のすべては問題ありませんが、要求にはCookieがありません。

サーバーは要求を理解しましたが、許可を拒否しました。

認証資格情報を要求に提供された場合、サーバーはその要求が認証資格情報が欠けているとき

ステータス401 unauthorizedがあるためアクセス権を付与するためにそれらが不十分と考えます。しかし、401はまた、WWW-Authenticateヘッダーフィールドを含む応答を必要とします。その質問に基づいて、リクエストはクッキーを持つべきであるが、そうではない。それは認証の問題ではない。

Status 400は、クライアント要求が誤っている場合です。これは、OPが説明しているシナリオでは誤解を招く可能性があります。

Status 422が適切かもしれませんが、それはの行にある何かを意味するのであまりにも一般的すぎると思いますが、サーバーは要求を処理できません。

+0

downvoterがdownvotingの代わりに彼らのdownvoteを説明する必要があった場合は役立つかもしれないwilly-nilly ... – Yogesch

関連する問題