**http(Hypertext Transfer Protocol)**は、通常TCPの上で実行される単純なリクエスト-レスポンスプロトコルです。
RFCでは、HTTPのステータスコードは**"3桁 "の数字であり、最初の1桁でレスポンスのカテゴリ**が定義され、以下の5つのカテゴリに分類されると規定しています。
- 1XX: リクエストがサーバーに受け入れられ、サーバーが処理中であることを意味します。
- 2XX: リクエストが正しく返されたことを意味します
- 3XX:リダイレクション・ステータス
- 4XX: クライアントエラー
- 5XX: サーバー側のエラー
XX情報クラス
メッセージタイプのステータスコードです。
XX: リクエスト成功後に返されます。
- 200 OK: クライアントからのリクエストがサーバー側で正しくリクエストされたことを示します。
- 204 No content: リクエストは成功したが、返すリソースがないことを示します。
XXリダイレクト
- 301 Moved Permanently: 恒久的なリダイレクト。リクエストされたリソースは恒久的に新しいURIに移動しました。リターン情報は新しいURIを含み、ブラウザは自動的に新しいURIに誘導されます。
- 302 Found: 一時的な移動。301と似ていますが、現在のリソースが一時的に新しいURIに移動される点が異なります。
- 304 Not Modified: リソースが変更されていない、すべてのリソースが変更されていない、ネゴシエーションキャッシュにヒット、キャッシュからファイルを読み込む
- 307 Temporary Redirect: 一時的なリダイレクト。302 に似ています。GET リクエストを使ったリダイレクト
XX: クライアントエラー
- 400 Bad Request (不正なリクエスト): クライアントのリクエストの構文が正しくなく、サーバーはそれを理解できません。たとえば、クライアントがパラメータを渡しているかどうか、必須のパラメータが渡されていないか、などです。
- 401 Unauthorized: 認証されていない、クライアントがリクエストしたリソースにアクセスする前に認証が必要、リクエストにアクセスするための認証情報は持っていない、など。
- 403 Forbidden: アクセス禁止のリクエスト。 サーバーはクライアントから送られたリクエストを理解しますが、リクエストの実行を拒否します。
- 404 Not Found: サーバーにリソースが見つかりません。
- 405 Method Not Allowed: クライアントのリクエストに含まれるメソッドが禁止されています。例えば、現在リクエストされているリソースは本来getリソースですが、クライアントはpostでアクセスするように要求しています。このような状況が発生します。 クライアントはoptionsメソッドを使用して、サーバによって許可されているアクセスメソッドを表示することができます。
XXサーバー エラー
- 500 Internal Server Error: 内部サーバーエラー、リクエストを完了できません。
- 502 Bad Gateway: 無効な応答、ゲートウェイまたはプロキシとして動作するサーバーがリクエストを実行しようとすると、リモートサーバーから無効な応答を受け取ります。
- **ゲートウェイまたはプロキシとして動作しているサーバーは、リモートサーバーから要求を適時に取得できませんでした。
- 505 HTTPバージョンがサポートされていません:サポートされていないHTTPバージョン、サーバーがHTTPプロトコルの要求されたバージョンをサポートしていない、プロセスを完了することはできません。