このようなRFC HTTP ステータス コードを再利用することは良い習慣と見なされますか?それとも、特定のエラーの理由に正確に対応する新しいコードを作成する必要がありますか?
いくつかのレガシー アプリケーションを中心に Web サービス API を設計しています。
応答本文の JSON/XML データ構造に加えて、Web キャッシュと開発者にとって意味のある HTTP ステータス コードを返すことを目指しています。
しかし、さまざまなクラスのエラーを適切な HTTP ステータス コードにマッピングするにはどうすればよいでしょうか。チームの全員が次のことに同意します。
GET /package/1234は、1234 が存在しない場合、404 Not Foundを返します
GET /package/1234/next_checkpointは、「next_checkpoint」と1234 が要求するのに有効な場合、 400 Bad Requestを返しますが、ここで next_checkpont は意味がありません...
など...しかし、場合によっては、単に「400」よりも具体的にする必要があります-例:
POST /dispatch/?for_package=1234は、/dispatch とパッケージ 1234 の両方が存在する場合、 412 Precondition Failedを返しますが、1234 はまだ発送の準備ができていません。