HTTPのリクエストとレスポンスを、身近なページで考える
ブラウザが「このページをください」と頼み、サーバーが結果やデータを返す。そのやり取りのルールがHTTPです。まず、ラボで説明書を借りる場面から見てみましょう。
説明書がない。それも返事? 全3ページ
紙ひこうきを作りたいイトが、マコトに説明書を頼みます。欲しい資料が見つかるときと、見つからないときでは、返事はどう変わるでしょう。
画像を押すと拡大できます。+/−で大きさを変え、拡大中はドラッグして読めます。
1 / 3何を見たいか、伝える
ラボで紙ひこうきを作りたいイト。マコトに説明書を頼みます。

1ページ目のセリフ
- ラボの机に紙を用意したイト。「紙ひこうきの作り方、見たいな」
- イトが棚を指して「あれ、見せて!」
- いくつもある資料を前に、マコト。「どの作り方かな?」
- イト。「紙ひこうきの説明書を見せて!」。マコトは図入りの説明書を渡す。「これだね。どうぞ」
2 / 3見つからない、も返事
今度は輪っかのひこうきの説明書が欲しくなりました。けれど、棚にはありません。

2ページ目のセリフ
- イトは紙ひこうきと紙の帯を前に「輪っかのひこうきも作ってみたい!」
- イトがマコトに「輪っかの説明書はある?」
- マコトが棚を探す。「ここには、ないみたい」
- イトは紙の帯を持って「『ない』っていう返事もあるんだね」。マコト。「何も返ってこないのとは違うね」
3 / 3Webでも、要求して応答を受け取る
棚になかった作り方をWebで見つけました。画面の裏でもやり取りが起きています。

3ページ目のセリフ
- イトとマコトが、輪っかのひこうきの作り方をパソコンで見る。ピコ。「Webでも、頼んで、返事を受け取るんだ」
- ブラウザからサーバーへ向かう矢印に「リクエスト」。ピコ。「このページをください!」
- サーバーからブラウザへ戻る矢印に「レスポンス」。ピコ。「結果と、ページのデータが返るよ」
- 作り方を見て、紙の輪を棒でつないだひこうきができた。イト。「頼むのと、返ってくるのは別なんだね」。ピコ。「そのやり取りのルールがHTTPだよ」
資料を頼む側がブラウザ、返す側がサーバーにあたります。実際のHTTPでは人が棚を探すのではなく、ソフトウェアが決まった形式のメッセージをやり取りします。返事に本文がない場合もあります。
ブラウザからサーバーへ送る「このページをください」などのお願いをリクエスト、サーバーから返ってくる返事をレスポンスと呼びます。返事には、ページのデータや「見つからない」といった結果が入ります。たとえばページを取得できれば200、要求された場所に情報が見つからなければ404などの番号で結果を伝えます。「見つからない」という返事が届くことと、返事自体が届かないことは違います。

いま開いているページなら、何をお願いし、何が返ってきたでしょうか。「ページを見たいと頼み、表示するためのデータを受け取った」と一往復で考えてみてください。
漫画のやり取りを、第64話「HTTPのお願い票には何が入っている?」では、画面のむこう側のお願い票としてさらに詳しく見ていきます。
HTTPが受け持つやり取り
お願いと返事そのものを先に整理するなら、リクエストとレスポンスとは が近い入口になります。
ブラウザは、ページや画像などの材料をサーバーへ頼みます。サーバーは要求に応じて、ページの構造を記したHTMLや画像データなどを返します。HTTPが決めているのは、この要求と応答の意味や形式です。電波やケーブルそのものの名前ではありません。
説明書を頼むときに「何が欲しいか」を伝えたように、HTTPにも要求を具体的に伝える項目があります。行きのメッセージと、帰りのメッセージを分けて見てみましょう。
HTTPリクエストの中身|GET・POSTなどのメソッド
リクエストは、ブラウザやアプリからサーバーに送るお願いです。
単に「ページください」と言っているだけではなく、どの場所に、どんな方法で、どんな追加情報をつけてお願いするかが含まれます。
| 要素 | 役割 |
|---|---|
| メソッド | GET(情報の取得)やPOST(送った内容の処理)など、要求の種類 |
| URLやパス | サイト内のどの場所に用があるか |
| ヘッダー | ブラウザの情報、受け取りたい形式、Cookieなどの追加情報 |
| 本文 | フォーム送信内容やAPIに送るデータなど、必要な場合に入る中身 |
GETは情報の取得を求めるとき、POSTはフォームの送信など、送った内容を処理してもらうときに使います。POSTだから必ず新しいデータを作る、という意味ではありません。どんな処理をするかはサービスの設計によって異なります。

ユイ
リクエストは、どこへ何を頼むかを書いた作業票なんですね
ピコ
そう。「どこへ」と「何をしてほしいか」が分かれているんだ
HTTPレスポンスの中身|200・404・500のステータスコード
レスポンスは、サーバーから返ってくる返事です。
WebページならHTMLが返ることがありますし、画像、CSS、JavaScript、JSONなどが返ることもあります。レスポンスを見るときは、本文だけでなく結果を示す情報も大切です。
| 要素 | 役割 |
|---|---|
| ステータスコード | 成功、移動、見つからない、サーバー側の失敗などを示す番号 |
| ヘッダー | 返すデータの種類、キャッシュの扱い、Cookieの指示などの追加情報 |
| 本文 | HTML、画像データ、JSON、エラーメッセージなど |
たとえば200は成功、404は求めた情報が見つからない場合など、500はサーバー側の予期しない問題を示します。404が出たからといって、あなたのパソコンが壊れたとは限りません。200も、記事の内容まで正しいと認定する番号ではありません。

APIとHTTPの関係
APIは、アプリやサービスがデータや機能をやり取りする窓口です。
そのAPIへのお願いを運ぶときに、HTTPが使われることがあります。たとえば、検索APIへGETで条件を送り、JSONのレスポンスを受け取る。保存APIへPOSTで内容を送り、成功や失敗の結果を受け取る。こうした流れは、HTTPのリクエストとレスポンスとして見ると整理できます。
ただし、APIという言葉は窓口や約束全体を指し、HTTPはそのやり取りを運ぶ通信ルールとして出てくることが多い言葉です。混ぜて覚えるより、次のように分けると見えやすくなります。
| 言葉 | ざっくりした役割 |
|---|---|
| API | データや機能を使うための窓口 |
| HTTP | Webでリクエストとレスポンスをやり取りする約束 |
| JSON | APIの返事などで使われることがあるデータ形式 |
| エンドポイント | APIの窓口を示すURL |
HTTPとHTTPSの違いと注意点
HTTPはWebのやり取りの約束です。
HTTPSは、そのHTTPのやり取りをTLSで暗号化し、通信相手の確認なども含めて安全性を高めた形です。つまり、HTTPSはHTTPとまったく別の会話ではなく、HTTPの会話を守られた通路で行う、と考えると入りやすくなります。
ただし「HTTPSなら何をしても安全」という意味ではありません。偽サイトがHTTPSを使っている場合もあります。暗号化されていることだけで安心せず、ドメイン名やページの内容も確認します。違いを詳しく比べるなら HTTPとHTTPSの違い が続きです。
URLを開いたあとの順番
HTTPが出てくる位置を、Webページ表示の流れに置いてみます。
- ブラウザにURLを入れる
- DNSでドメイン名から宛先を探す
- 必要に応じて安全な通信路を準備する
- ブラウザがHTTPリクエストを送る
- サーバーがHTTPレスポンスを返す
- ブラウザがHTMLや画像などを受け取る
- ブラウザが受け取った材料を画面に組み立てる
この順番を知っていると、「DNSエラー」と「HTTPエラー」を分けやすくなります。DNSエラーは名前から宛先を見つける段階で止まっている可能性があります。一方、404や500のようなHTTPステータスは、サーバーから何らかの返事が来ている段階で見かけます。
一つのページでもお願いは複数ある
Webページを一つ開くとき、HTTPのお願いは一回だけとは限りません。
最初にHTMLを取りに行き、そのHTMLの中に書かれたCSS、画像、JavaScript、フォントなどを追加で取りに行くことがあります。つまり、画面で見えている一枚のページの裏側には、小さなリクエストとレスポンスが複数並んでいる場合があります。
たとえば、ページ表示では次のようなお願いが起きることがあります。
- HTMLをください
- 見た目を決めるCSSをください
- 画像ファイルをください
- 動きを作るJavaScriptをください
- 後から表示するデータをください

この考え方を持つと、ページが遅いときに「サーバーが返事をしたか」だけでなく、「そのあと追加の材料を取りに行っていないか」「画像が重くないか」「JavaScriptの処理が重くないか」まで分けて見られます。
イト
お願いと返事の約束であって、電波やケーブルの名前じゃないんだ
ユイ
通信の道と、その上で交わすメッセージを分けて考えられます
HTTP確認ワークとクイズ
次の三つを一文でつないでみてください。
- ブラウザ
- リクエスト
- サーバー
例は、「ブラウザがサーバーへリクエストを送り、サーバーがページのデータをレスポンスとして返す」です。ここに「その約束がHTTP」と足せると、説明の骨組みができます。
Q1. HTTPはWebページの見た目を決める言語ですか?
いいえ。見た目にはCSSなどが関わります。HTTPは、ブラウザやアプリとサーバーがデータをやり取りするための約束です。
Q2. HTTPのレスポンスには何が含まれますか?
ステータスコード、ヘッダー、HTMLやJSONなどの本文が含まれる場合があります。
Q3. DNSでIPアドレスがわかったら、それだけで画面表示は完了しますか?
いいえ。宛先がわかったあと、HTTPやHTTPSでサーバーへリクエストを送り、レスポンスを受け取り、さらにブラウザが画面に組み立てる流れが続きます。
この記事の情報・用語を確認する
読了目安 9分 / 更新日
TERM PRIMER
この記事で使った言葉
- HTTP
- Webで「このページをください」というお願いと、データや結果を伝える返事をやり取りするためのルールです。
- HTTPS
- HTTPの通信を暗号化して、より安全にやり取りするためのしくみです。
- リクエスト
- ブラウザやアプリがサーバーに送るお願いです。ページや画像をください、という合図です。
- レスポンス
- ページや画像を求めるお願いに対して、サーバーが返す返事です。ページのデータや「見つからない」といった結果を伝えます。
- メソッド
- HTTPで、取得や送信など要求の種類を表す語です。GETやPOSTがあります。
- ステータスコード
- 要求の結果をサーバーが数字で返す合図です。200は成功、404は見つからない、500はサーバー側の問題を表します。
LAB WHITEBOARD
自分の言葉で説明してみよう
「HTTPがWebでリクエストとレスポンスをやり取りするための約束であること、メソッド・ヘッダー・ステータスコード・HTTPSとの関係を説明できるようになる。」を、いまの自分の言葉で一文にしてみてください。途中の説明でも大丈夫です。




