バイブコーディングの土台
← 学習メディアトップ

コラム・読みもの

HTTPとAPIのしくみ— 「ネットの向こう側」を読む

Webページやアプリは、裏側で絶えずデータをやり取りしています。 「ログイン」「一覧の読み込み」「送信」——全部その通信です。 AIが書いたコードに fetch や 「API」が出てきたとき、何が起きているか読めるようになるのがこの記事のゴール。 専門用語は、レストランのたとえで全部ほどきます。

いちばん大事な1往復

「お願い」と「お返事」でできている

ネットの通信は、たった1つの往復がすべての基本です。 あなたのブラウザやアプリがリクエスト(お願い)を送り、 サーバー(向こう側のコンピュータ)がレスポンス(お返事)を返す。これだけ。

あなたブラウザ/アプリ
リクエスト○○ちょうだい
サーバー向こう側
レスポンスはいどうぞ

🔎 たとえるなら

レストランと同じです。あなた(お客)が「カレーください」と注文(リクエスト)し、 店(サーバー)が料理(レスポンス)を出す。 注文の仕方が悪ければ違う料理が来るし、店が忙しければ待たされる。通信もまったく同じ構図です。

あて先

URLは「住所」— どこに頼むか

リクエストには「どこへ」というあて先が要ります。それがURL。 プログラムがデータを取りに行く専用のURLをエンドポイントと呼びます。

https://api.example.com/users/123

  • api.example.com … どのお店か(サーバー)
  • /users … 何について(ユーザーの窓口)
  • /123 … どれか(123番のユーザー)

頼み方の種類

HTTPメソッド — 「何をしたいか」の4種

同じあて先でも「読みたい」のか「送りたい」のかで、頼み方(メソッド)が変わります。 よく使うのはこの4つ。名前の意味だけ知っておけば十分です。

GET取ってくる(読む)

例: 「記事一覧をちょうだい

POST新しく送る(作る)

例: 「この内容で投稿して

PUT / PATCH書きかえる(更新)

例: 「この記事を直して

DELETE消す(削除)

例: 「この記事を消して

🔎 たとえるなら

レストランでいえば、GET=「メニュー見せて」、POST=「新しく注文」、 PUT=「さっきの注文を変更」、DELETE=「注文キャンセル」。動詞が違うだけです。

お返事の合図

ステータスコード — 3桁の「結果表示」

レスポンスには、うまくいったか失敗したかを表す3桁の番号がついてきます。 ざっくり200番台=成功、400番台=こちらのミス、500番台=向こうのミスと覚えればOK。

200 OK成功。ちゃんと返ってきた
301 / 302引っ越し。別のURLへ案内
400こちらの頼み方が変(入力ミスなど)
401 / 403権限がない(ログイン必要/禁止)
404そのページ・データが無い
500向こう(サーバー)側でエラー

🎮 404や500は「エラー文おみくじ」にも登場します。ゲームで引くと、体で覚えられます。

データの形

JSON — やり取りされる「データの箱」

レスポンスで返ってくるデータは、たいていJSON(ジェイソン)という形をしています。 「名前: 値」のペアの集まりで、人間にもプログラムにも読みやすい書き方です。 JavaScriptのオブジェクトとそっくりなので、JSを学んだ人ならすぐ読めます。

{
  "id": 123,
  "name": "太郎",
  "isActive": true,
  "tags": ["web", "ai"]
}

「123番の、名前が太郎で、有効な、web/aiタグのユーザー」——形が分かれば、中身も読めます

まとめの言葉

APIとは「プログラム同士の窓口」

ここまでを一言でまとめると——APIとは、 「このURLに、この方法(メソッド)で頼めば、こういうデータ(JSON)を返します」という決められた窓口のこと。天気・地図・AI(LLM)など、世の中の便利な機能は たいていAPIとして公開されていて、あなたのアプリから呼び出して使えます。

🔎 たとえるなら

電源コンセントのようなものです。中の仕組みを知らなくても、 決まった形の差込口(API)に繋げば電気が使える。 APIも「決まった頼み方」さえ守れば、中身を作らずに機能を借りられます。

AIが書いた fetch("https://...") のコードを見たら、もう大丈夫。「あのURLの窓口に、GETで、データをお願いしているんだな」と読めるあなたになっています。