跳到主要內容
Cypher's Practical Coding
API 實戰:從看懂到會用

結業考試

10 題,每題 5 分,滿分 50 分。 可先執行查看結果再交卷。

已作答 0 / 10
API 文件閱讀

1. 用 URLSearchParams 組出 API 查詢 URL。基礎網址:https://api.shop.com/orders,參數:status=completed、from=2024-03-01、limit=50。印出完整 URL。

API 文件閱讀

2. 將路徑參數和查詢參數組合。商品 ID 是 SKU-555,endpoint 是 /api/products/{id},額外帶 include_reviews=true。基礎網址 https://api.shop.com。印出完整 URL。

發送請求

3. 模擬 API 回傳的商品列表,計算所有商品的平均價格(整數),印出「平均價格: 1590」。 起始程式碼: const data = { products: [{ price: 890 }, { price: 1590 }, { price: 2290 }] };

發送請求

4. 篩選 API 回傳的訂單,只留 status 為 'completed' 的,印出筆數。格式:「已完成訂單: 2 筆」。 起始程式碼: const orders = [ { id: 'A', status: 'completed' }, { id: 'B', status: 'pending' }, { id: 'C', status: 'completed' }, { id: 'D', status: 'cancelled' } ];

認證

5. 組出 Authorization header 值。token 是 mytoken456,格式是 Bearer {token}。再組出完整 headers 物件(含 Content-Type: application/json),印出 JSON。

認證

6. 判斷 Token 狀態。expires_in > 0 印「有效(剩餘 {n} 秒)」,否則印「已過期」。 起始程式碼: const token = { value: 'abc', expires_in: 1800 };

POST 請求

7. 建立訂單的 request body,包含 customer_id ('C-100')、items 陣列(一筆:sku 'SKU-200'、qty 3)。轉成 JSON 字串後印出。

POST 請求

8. 處理 API 回應:status 201 印「成功: {order_id}」,400 印「格式錯誤」,其他印「未知錯誤: {status}」。 起始程式碼: const res = { status: 400, body: { order_id: null } };

分頁與錯誤處理

9. 計算分頁資訊。total 是 234,limit 是 50。印出兩行:「總頁數: 5」和「最後一頁筆數: 34」。

電商實戰

10. 從商品列表中找出「庫存低於 10 且評分高於 4.0」的商品名稱,逐行印出。 起始程式碼: const products = [ { name: '白T', stock: 5, rating: 4.5 }, { name: '黑褲', stock: 30, rating: 3.8 }, { name: '帽子', stock: 3, rating: 4.2 }, { name: '圍巾', stock: 8, rating: 3.5 } ];

確認作答完畢後,點擊交卷