レスポンス本文にエラーがあるhttp 200 OKを返す 質問する

レスポンス本文にエラーがあるhttp 200 OKを返す 質問する

HTTP 200 OKサーバー側でエラーが発生したときに返すのが正しいかどうか疑問に思っています(エラーの詳細はレスポンス本文に含まれます)。

例:

  1. 送信中HTTP GET
  2. サーバー側で予期しない問題が発生しました。
  3. サーバーはHTTP 200 OKレスポンス内にエラーを含むステータスコードを返します(例{"status":"some error occurred"}

これは正しい動作でしょうか? ステータス コードを 200 以外のものに変更する必要がありますか?

ベストアンサー1

いいえ、エラー本文を含む200を送信するのは間違いです

HTTP はアプリケーション プロトコルです。200 は、応答に要求されたリソースの状態を表すペイロードが含まれていることを意味します。エラー メッセージは通常、そのリソースを表すものではありません。

GET の処理中に問題が発生した場合、正しいステータス コードは 4xx ("あなたが間違えました") または 5xx ("私が間違えました") です。

おすすめ記事