【えいちてぃーてぃーぴーすてーたすこーど】
HTTPステータスコード とは?
最終更新:
💡 サーバーからの「通知カード」
HTTPの応答で、リクエストの結果や応答の意味を示す3桁の番号。ブラウザだけでなくAPIクライアントなども受け取る。200は成功、404は対象が見つからない・存在を明かさない場合、500は予期しないサーバー側の問題を示す。
📌 このページのポイント
HTTPステータスコードって何?
先頭の数字で何が分かるの?
1xxは途中の情報、2xxは成功、3xxは要求を完了するための追加の対応、4xxはクライアントエラー、5xxはサーバーエラーという分類だよ。4xxだからといって、利用者の入力ミスだけが原因とは限らないんだ。
401と403はどう違うの?
401は対象に対する有効な認証情報が不足していることを示すよ。403はサーバーが要求を理解しても実行を拒否すること。権限不足が一例だけれど、認証情報とは別の理由でも拒否できるので、必ずログイン済みという意味ではないんだ。
404なら、そのページは絶対に存在しない?
対象の現在の内容が見つからない場合だけでなく、サーバーが存在を明かさない場合にも使えるよ。禁止された対象の存在を隠すため、403の代わりに404を返すことも仕様で認められている。番号だけで不存在や原因を断定しないでね。
3xxは全部、別のURLへ移動するの?
301や302は別の場所への案内に使うけれど、304 Not Modifiedは条件付きGETやHEADへの応答だよ。クライアントに保存済みの内容を使わせるので、本文は送らない。3xxをすべてURL転送だけと覚えると、この違いを見落とすんだ。
📖 おまけ:英語の意味
「HTTP Status Code」 = HTTPの応答の意味を示す番号
💬 Statusは状態、Codeは符号・番号。サーバー全体の健康状態ではなく、その要求に対する結果や応答の意味を伝えるよ。