400 Bad Request
HTTP の 400 Bad Request
クライアントエラーレスポンスステータスコードは、サーバーがクライアントエラーとみなした何らかの理由により、サーバーがリクエストを処理しなかったことを示します。
400
レスポンスの理由は、通常、リクエスト構文が不正であったり、リクエストメッセージのフレームが不正であったり、リクエストルーティングが不正であったりするものです。
400
のレスポンスを受け取ったクライアントは、リクエストを変更せずに繰り返しても、同じエラーで失敗することを想定しておくべきです。
ステータス
400 Bad Request
例
リクエストの構文が不正な場合
ある REST API があり、ユーザーを管理するエンドポイントが http://example.com/users
であったとします。POST
リクエストで以下の本体を送ってユーザーを作成しようとするものの、エスケープされていない改行がある不正な JSON を使っているとします。
POST /users HTTP/1.1
Host: example.com
Content-Type: application/json
Content-Length: 38
{
"email": "b@example.com
",
"username": "b.smith"
}
コンテンツが有効な形式であれば、201 Created
レスポンスまたはその他の成功メッセージが返されると予想されますが、代わりにサーバーは 400
を返し、レスポンス本体には、クライアントが適切に書式化されたリクエストでアクションを再試行できるようにするためのコンテキストを含む message
フィールドが含まれます。
HTTP/1.1 400 Bad Request
Content-Type: application/json
Content-Length: 71
{
"error": "Bad request",
"message": "Request body could not be read properly.",
}
仕様書
Specification |
---|
HTTP Semantics # status.400 |