ume

HTTPレスポンスの中身

HTTPレスポンスの構成

3つのパートに分けれる

  • HTTPステータスライン

  • HTTPレスポンスヘッダー

  • ボディ

HTTPステータスライン

⇨「HTTPリクエストの結果」が、ざっくり書かれている場所

実際のステータスライン↓

HTTP/1.1 200 OK\r\n

ステータスラインの構成.
【HTTPのバージョン】= どんなルールか.
ステータスコード】= どうだったか.
ステータスコードの説明】= ステータスコードの補足説明が英語で書いてる.

ステータスコード.

100番台:リクエストが受け入れられてので処理を継続
200番台:リクエストが正常に処理されたよ
300番台:リクエスト完了のための追加操作が必要
400番台:リクエストに誤りがある
500番台:サーバー側のエラー

ステータスラインの意味.
⇨HTTP/1.1っていうルールでリクエストは正常に処理されたよ

HTTPレスポンスヘッダー

⇨「HTTPステータスラインに書ききれないレスポンスの情報」が書かれている場所.

実際のヘッダー

Server: nginx\r\n
Date: Tue, 11 Jul 2017 09:23:07 GMT\r\n
Content-Type: text/html\r\n
Transfer-Encoding: chunked\r\n
Connection: keep-alive\r\n

ヘッダーの見方.
[フィールド名][内容].
↓html形式でレスポンスするなぁって意味やキャッシュをするかしないかもヘッダーに含まれている.
Content-Type: text/html\r\n

ボディ

⇨「webページ」などリクエストされた情報が入っています。

<!DOCTYPE html>\r\n
<html lang="ja">\r\n
<head>\r\n
\t<meta http-equiv="content-type" content="text/html; charset=UTF-8" />\r\n
\t<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">\r\n
\r\n
\r\n
\t<meta name="keywords" content="\350\276\236\345\205\270,IT,\347\224\250\350\252\236,\345\210\235\345\277\203\350\200\205">\r\n
\t<meta name="author" content="Makoto Sasaki">\r\n
\t<meta name="copyright" content="Copyright PCS">\r\n
\r\n
\t<meta name="application-name" content="\343\202\217\343\202\217\343\202\217IT\347\224\250\350\252\236\350\276\236\345\205\270"/>\r\n
\t<link rel="stylesheet" href="css/style.css?ver=00109">\r\n
\t<link rel="stylesheet" href="css/search.css?ver=00109">\r\n
\t<script src="./js/jquery-1.7.2.min.js?ver=00109"></script>\r\n
\t<script src="./js/common.js?ver=00109"></script>\r\n
</head>\r\n
<body>\r\n

(中略)

</body>\r\n
</html>\r\n
\r\n

まとめ

  • HTTPリクエストとHTTPレスポンスどちらも3部構成でフィールドと内容で記載されている