0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

HTTPリクエストとレスポンス解説

Last updated at Posted at 2021-11-29

背景

HTTPのリクエストとレスポンスの構成が少し複雑なので整理する

HTTPリクエスト

ちなみにHTTPリクエストというのはクライアント(webブラウザ)から送られる通信のものです。

例: 
POST / HTTP/1.1 [リクエストライン]
Host: www.google.co.jp [ヘッダー]
Connection: keep-alive  [ヘッダー]
User-Agent: Mozilla/5.0(Windows NT 6.1;WOW64) [ヘッダー] 
Accept-Encoding: gzip,deflate [ヘッダー]

Keyword=AWS [ボディ]

HTTPリクエストはは↑のように構成されていて、リクエストラインはHTTPメソッドの種類、そしてHTTPプロトコルの種類を表示しています。

Hostというのはリクエスト先のサーバー名のことです。

Connectionというのは通信状況を示しています。

User-Agentといのはブラウザの種類を示しています。

Accept-Encodingというのは情報を圧縮するときの方式をサーバに伝えるために表示されています。
(WebサイトはHTMLやCSSなどのいろんな言語で構成されていますが、普通に表示させようとするとデータ量がかさんでしまうので、それを減らすために圧縮してから情報をサーバに送ります。このときに複数ある圧縮の方式からクライアントサイドはこの圧縮方式を使っていますよ!というのをサーバに伝えてくれています。)

HTTPレスポンス

HTTPレスポンスというのはクライアントからのリクエストを受け取ったサーバがそれに返信する形でクライアントに送る情報のことです。

例:
HTTP/1.1 200 OK [ステータスライン]
Date: Wed 09 Apr 2021 06:38:47 GMT [ヘッダー]
Cache-Control: private, max-age=0; [ヘッダー]
Content-Type: text/html; charset=UTF-8 [ヘッダー]
Server: gws [ヘッダー]

<html><body> .. [ボディ]

HTTPレスポンスは↑のように構成されています。
ステータスラインとはリクエストに対しての結果を伝えています。200 OKとなっている場合は接続が正常だという意味で、これが4XXみたいに百の位が4とかなっているとクライアントエラー(クライアント側のリクエストに何らかのエラーがある)ということを示しています。
そして、その左のHTTP/1.1というのはHTTPプロトコルのversionを示していて、現在では通常HTTP/1.1が使われています。ちなみにHTTP/1.0はtティム・バーナーズリーというインターネット会の始祖的な人が作りました。

Dateは日付を表しています。

Cache-Controlとは読み込んだページをキャッシュとして保存して良いかの確認を表している文です。(キャッシュというのは同じページを開いた時にいちいち最初から読み込んでいるとデータがかさむので、読み込んだページをキャッシュとして保存し、データを節約することができるものです。)

Content-Typeとはページに表示しているデータそのものを表しています。text/htmlであればHTMLとしてユーザーに表示、画像ならimage/pngみたいな感じになります。

serverとはWebサーバの名前です。ここではgoggle serverを意味しています。

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?