クリーム色の背景、色付き表示、高コントラスト、大きな文字のほうが読みやすいですか?配色と文字を選ぶと、すべてのページに一度で反映されます。

無料レッスン

HTTP のリクエストとレスポンス

このレッスンのあとで: リクエストとレスポンスが何かを説明できる。

50分のレッスンコマンドなし

荷物は今どこにあるか

宅配便の追跡番号を、スマートフォンのアプリに入力しました。すぐに「名古屋市 配達中」と表示されます。

このとき、アプリは宅配会社のサーバーに質問を送り、サーバーが答えを返しています。

このやりとりの決まりを HTTP と言います。ほぼすべてのアプリとウェブサイトが使っています。

このレッスンのゴール

メモ

リクエストとレスポンスが何かを説明できる。

キーワード

ことばいみれい
リクエストサーバーへ送るお願い
レスポンスサーバーが返す答え
メソッドリクエストで何をしたいかを表す言葉GET
ステータスコード結果を表す三けたの数字404
ヘッダーリクエストやレスポンスに付く追加の情報
APIプログラム同士がやりとりするための窓口

学生が入力するセルは、このプレビューでは空白です。

リクエストを送るとレスポンスが返る

アプリやブラウザは、URL を宛先にしてリクエストを送ります。

サーバーはレスポンスを返します。一行目にステータスコード、次にヘッダー、空いた行の後に本文が続きます。

プログラムが使うための URL をまとめたものを API と呼びます。本文はよく JSON という形で届きます。

下の例は、curl という道具で送ったときの実際の出力です。

例: 荷物の状況を聞く

コード: bash
$ 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番台のときだけ、サーバーを調べます。

授業で使いますか?このモジュールを学生に割り当てると、教員用ガイド、自動採点つきの課題、学生ごとのラボを使えます。