荷物は今どこにあるか
宅配便の追跡番号を、スマートフォンのアプリに入力しました。すぐに「名古屋市 配達中」と表示されます。
このとき、アプリは宅配会社のサーバーに質問を送り、サーバーが答えを返しています。
このやりとりの決まりを HTTP と言います。ほぼすべてのアプリとウェブサイトが使っています。
このレッスンのゴール
メモ
リクエストとレスポンスが何かを説明できる。
キーワード
| ことば | いみ | れい |
|---|---|---|
| リクエスト | サーバーへ送るお願い | |
| レスポンス | サーバーが返す答え | |
| メソッド | リクエストで何をしたいかを表す言葉 | GET |
| ステータスコード | 結果を表す三けたの数字 | 404 |
| ヘッダー | リクエストやレスポンスに付く追加の情報 | |
| API | プログラム同士がやりとりするための窓口 |
学生が入力するセルは、このプレビューでは空白です。
リクエストを送るとレスポンスが返る
アプリやブラウザは、URL を宛先にしてリクエストを送ります。
サーバーはレスポンスを返します。一行目にステータスコード、次にヘッダー、空いた行の後に本文が続きます。
プログラムが使うための URL をまとめたものを API と呼びます。本文はよく JSON という形で届きます。
下の例は、curl という道具で送ったときの実際の出力です。
例: 荷物の状況を聞く
$ curl -i https://api.example.jp/parcels/48213
HTTP/1.1 200 OK
Content-Type: application/json
Date: Tue, 20 Oct 2026 01:15:00 GMT
{"id": 48213, "status": "配達中", "city": "名古屋市"}
メソッドで何をしたいかを伝える
リクエストには、必ずメソッドが付きます。
GET はデータを読むだけです。POST は新しいデータを作ります。PUT は今あるデータを書き換えます。DELETE は消します。
同じ URL でも、メソッドが違えば意味が変わります。
例: 市役所の予約 API
| メソッド | URL | 意味 |
|---|---|---|
| GET | /reservations/77 | 予約77番の内容を見る |
| POST | /reservations | 新しい予約を作る |
| PUT | /reservations/77 | 予約77番の日時を変える |
| DELETE | /reservations/77 | 予約77番を取り消す |
学生が入力するセルは、このプレビューでは空白です。
ステータスコードは結果を数字で伝える
ステータスコードは、百の位で大きく分かれます。
200番台は成功です。400番台は、送った側のリクエストに問題があります。500番台は、サーバーの中で問題が起きています。
障害の連絡を受けたら、まずこの数字を見ます。どちらを調べればよいかがわかるからです。
例: よく見るステータスコード
| コード | 意味 | まず調べる側 |
|---|---|---|
| 200 | 成功した | なし |
| 201 | 新しく作った | なし |
| 401 | ログインしていない | 送った側 |
| 403 | 権限がない | 送った側 |
| 404 | その URL はない | 送った側 |
| 500 | サーバーの中でエラー | サーバー |
学生が入力するセルは、このプレビューでは空白です。
よくある誤解
注意
エラーが出たら、いつもサーバーが悪い、と思われがちです。400番台は、URL の打ち間違いやログイン切れなど、送った側の問題です。500番台のときだけ、サーバーを調べます。