LoginSignup
0
1

More than 3 years have passed since last update.

HTTPを理解する④ ステータスコードとヘッダとボディ

Last updated at Posted at 2019-05-26

HTTPメッセージは以下の複数行のデータから構成されています。
HTTPメッセージ.png

スタートラインに関しては異なり、HTTPリクエスト時はリクエスト行、HTTPレスポンスではステータス行と呼ばれます。
ステータスラインは構成として三つに分けれます。

HTTP/1.1 200 OK

左からプロトコルバージョン、ステータスコード、テキストフレーズで成り立っています。ここで重要なのがステータスコードです。レスポンスに間違ったステータスコードを渡してしまうとクライアントがその後どんな操作をすればいいかわからなくなってしまいます。

ステータスコード

webブラウザからリクエストが送られ、サーバーがそれに対してレスポンスを返します。このとき、HTTPメッセージのスタートライン行にはリクエストに対する処理結果が3行の数字で表現されます。この3行の数字をステータスコードといいます。ステータスコードは処理内容によって100番台から500番台の5つで分類されています。

100番台 処理中

処理がまだ継続していることを示します。

200番台 成功

リクエストが成功したことを示します。

300番台 リダイレクト

ほかのURLにリダイレクトすることを示す。このステータスコードを受け取るとレスポンスメッセージのLocationヘッダを参照して、そのURLのページに移動する。

400番台 クライアントエラー

クライアント側のエラーを示す。「404 Not Faund」はクライアントエラーとして一般的によく表示されることが多いステータスコード。

500番台 サーバーエラー

サーバーエラーを示し、サーバー側の問題を解決しないと正常な結果が得られない。サーバーに高負荷がかかったときによく表示される。

メッセージヘッダ

HTTPメッセージに関する詳細なことはメッセージヘッダに書かれています。クライアントやサーバーはこのメッセージヘッダを見て、メッセージに対す挙動を決めます。メッセージヘッダは複数の「ヘッダフィールド」からなりたっています。

メッセージボディ

バイナリデータ(コンピュータが扱うデータ全般)が入ります。例えばリクエスト時はPOSTメソッドが実行されたとき、パラメータが入ります。レスポンスではHTMLが含まれたりします。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1