讀 API 文件
把任何 API 文件條目翻成可以跑的 curl 指令
⏱ 預估 ~7 分鐘
01 · 讀一讀
技能不是背 API。是會讀任何 API 文件,2 分鐘內翻成可以跑的請求。
每個 API 都有文件。格式不同,但結構是一致的:- Method + path — 要發什麼請求 - Path parameters — 嵌在 URL 路徑裡的值 - Query parameters — 可選的過濾條件跟選項 - Request body — POST/PUT 要送什麼 JSON - Response — 你會拿到什麼
重點整理
- 像 {owner} 這種 path parameter 是直接代到 URL 路徑裡
- Query parameter 放在 ? 後面,沒標 required 的都是可選
- POST/PUT 的請求主體欄位用 -d '{...}' 送
- 永遠先看文件的「Authentication」(驗證)那段
02 · 看程式碼
我們一起讀一份真實的 GitHub API 文件條目。
API 文件條目
GET /repos/{owner}/{repo}/issues
Path parameters:
owner (string, required) — account owner of the repository
repo (string, required) — name of the repository
Query parameters:
state (string) — "open", "closed", or "all" — default: "open"
labels (string) — comma-separated label names
per_page (integer) — results per page, max 100, default 30
page (integer) — page number of results
Response: Array of issue objects
翻成 curl 指令
# Get all CLOSED issues for facebook/react, 10 per page
curl "https://api.github.com/repos/facebook/react/issues?state=closed&per_page=10"
翻譯過程: 1. Method = GET → 不用 -X 旗標 2. Base URL = https://api.github.com 3. Path = /repos/{owner}/{repo}/issues → {owner} 換成 facebook、{repo} 換成 react 4. Query params = ?state=closed&per_page=10 5. 公開 repo 不用驗證
03 · 真機練習
你自己試試。跑這個指令拿 facebook/react 已關閉的 issue。
curl "https://api.github.com/repos/facebook/react/issues?state=closed&per_page=5"
04 · 填空
API 文件寫 GET /repos/{owner}/{repo}/commits。要拿 torvalds/linux repo 的 commit,URL path 會是:/repos/___/linux/commits
05 · 真機練習
現在全部串起來。把這個文件條目翻成完整的 curl 指令:GET /repos/{owner}/{repo}/commits Query:author(GitHub username)、per_page(最多 100) 任務:拿 torvalds/linux 最近 5 個 commit,不限作者。
curl "https://api.github.com/repos/torvalds/linux/commits?per_page=5"
06 · 選擇題
API 文件寫:GET /users/{userId}/orders?status=pending&limit=50。你要拿使用者 ID 42、狀態 pending 的訂單、限制 10 筆。正確的 path 是?
- /users?userId=42/orders?status=pending&limit=10
- /users/{42}/orders?status=pending&limit=10
- /users/42/orders?status=pending&limit=10
- /users/42/orders&status=pending&limit=10
07 · 填空
API 文件寫 GET /repos/{owner}/{repo}/commits 時,像 {owner} 這種大括號的部分叫 _____ parameter。
⚠ 完整互動體驗需要 JavaScript。請啟用 JavaScript 後重新整理。
※ 本站為獨立繁中教學專案,非 Anthropic 官方產品。Claude™ 為 Anthropic, PBC 商標。