プログラミングを学んでいると、必ず出てくる言葉 「API」。
でも最初はこんな気持ちになりませんか?👇
-
APIって結局なに?😵💫
-
Web API?REST API?何が違うの?
-
用語が難しくてよく分からない…💦
この記事では、プログラミング初心者の方向けに
例え話たっぷり&絵文字多めで API を解説します 🎉
1. APIって何?🤔(例え話)
🍽 レストランで例えてみよう
あなたはレストランで料理を注文します。
-
あなた 👉 お客さん
-
注文 👉 リクエスト
-
料理 👉 レスポンス
-
店員 👉 API
👨🍳 キッチン(システムの中身)に
お客さんが直接入ることはできませんよね?
そこで登場するのが 店員(API) です。
📌 APIとは?
👉 「外部から機能を使うための窓口」
つまり
「お願いしたら、決められた形で結果を返してくれる仕組み」
それが API です ✨
API:Application Programming Interfaceの略です。
2. Web APIとは 🌐
では Web API とは何でしょう?
📌 Web API は
👉 インターネット(HTTP) 経由で使える API のことです。
よくある例 🧩
-
天気情報API ☀️🌧
-
Googleログイン 🔑
-
SNSの投稿取得 📱
💡 ブラウザやスマホアプリ、React や Next.js から サーバー(Django / Ruby on Rails / Node.js など)と通信する時に使います。
3. REST APIとは 🏗
REST API は Web APIの設計ルール です。
📌 REST(Representational State Transfer)
→ 難しそうですが、考え方はシンプル 😆
REST APIの特徴 ✨
-
URLで「何を扱うか」を表す
-
HTTPメソッドで「何をしたいか」を表す
-
状態を持たない(ステートレス)
例 📦
👉 「ユーザー一覧を取得したい」
GET /users
👉 「ユーザーを新しく作りたい」
POST /users
4. HTTPメソッド 🚦
HTTPメソッドは
👉 「何をしたいか」 を表します。
よく使うものはこちら👇
| メソッド | 意味 | 例 |
|---|---|---|
| GET | 取得する 📥 | データ一覧を見る |
| POST | 作成する ✏️ | 新規登録 |
| PUT | 全体更新 🔄 | プロフィール変更 |
| PATCH | 一部更新 🩹 | 名前だけ変更 |
| DELETE | 削除する 🗑 | アカウント削除 |
💡 CRUD(作成・取得・更新・削除) とセットで覚えると◎
CRUD:Create、Read、Update、Deleteの頭文字をとった単語
5. リクエスト / レスポンス 🔄
リクエスト 📤
クライアント(ブラウザ・アプリ)からサーバーへ送るお願い。
含まれるもの:
-
URL 🌍
-
HTTPメソッド 🚦
-
データ(JSONなど)📦
レスポンス 📥
サーバーから返ってくる結果。
含まれるもの:
-
ステータスコード 🔢
-
データ(JSON)📦
なおリクエストとレスポンスに関しては、下記の記事もご覧ください。
6. JSONとは 🧾
API通信でよく使われるデータ形式が JSON です。
📌 人にも機械にも読みやすい のが特徴 ✨
例 👇
{
"id": 1,
"name": "Taro",
"email": "taro@example.com"
}
-
キーと値のセット 🔑
-
JavaScript と相性抜群 💛
7. 認証・エラー(APIではどう使われる?)🔐⚠️
🔑 APIと認証の関係
Webアプリの認証は、APIを使って行われるのが一般的です。
例えばログイン処理は、こんな流れになります👇
1️⃣ フロントエンド(React / Next.js など)から
ユーザーが メールアドレスとパスワードを入力
2️⃣ その情報を使って、ログイン用APIにリクエストを送る 📤
POST /api/login
3️⃣ バックエンド(Django / Rails など)がユーザー情報を確認 👀
4️⃣ 正しければ、「ログイン成功」 のレスポンスを返す 📥
🪪 トークンを使った認証(イメージ)
多くのAPIでは、ログイン成功時に
トークン(JWTなど) または Cookie が返ってきます 🍪
その後のAPIリクエストでは、「私はログイン済みですよ」 という証明として、このトークンを一緒に送ります。
GET /api/user
Authorization: Bearer xxxxx
⚠️ 認証エラーもAPIで返ってくる
もしログインしていない状態で、認証が必要なAPIを叩くと…
401 Unauthorized
という エラーがAPIから返ってきます。
👉 これも「APIとフロントの会話」の一部です。
※ JWTとCookieについては下記の記事をごらんください。
8. まとめ 📝✨
最後におさらいです 👇
-
API 👉 機能を使うための窓口 🚪
-
Web API 👉 インターネット経由で使うAPI 🌐
-
REST API 👉 Web APIの設計ルール 📐
-
HTTPメソッド 👉 何をしたいか 🚦
-
JSON 👉 データの受け渡し形式 📦
💡 API が分かると
-
フロントエンド × バックエンドの理解が深まる
-
React / Next.js / Django / DRF が一気につながる
🙌 9. さいごに
この記事で、
🤯「APIがよく分からない」
から
😄「なんとなくわかったような気がする」
への一歩になっていれば嬉しいです。
👍 いいね
💬 コメント
をもらえると、とても励みになります!
ここまで読んでいただき、本当にありがとうございました!🎉
これからもどんどんアウトプットしていきたいと思いますので、他の記事も含めてよろしくお願いします。