產品經理一定要知道的 API 知識|EP57

更新於 發佈於 閱讀時間約 7 分鐘

API(Application Programming Interface,應用程式介面)可以視為不同軟體系統之間的溝通橋梁,讓雙邊可以交換數據並執行各種功能。這篇會記錄產品經理一定要知道的幾個 API 概念,像是常見的錯誤代碼以及不同的 HTTP 方法(如 PUT、GET、POST)和實際案例說明。

raw-image
誰適合看這篇文章?

✔ 對產品經理、產品企劃、產品策略、產品規劃有興趣的朋友

一、API 基本概念

⠀⠀

1. API 是什麼?

API,即應用程式介面,是一套定義不同軟體應用之間 互動方式 的規則,例如我在電商平台販賣商品,我想將電商平台的訂單拉到自己的網站進行出貨,這時就能直接透過 API 索取資訊,而不需要了解電商平台內部的細節。

⠀⠀

2. 如何使用 API?

使用 API 涉及兩個主要方面:請求(Request)和回應(Response)。當需要從伺服器獲取數據或進行某些操作時,發起者將發送一個「請求」到伺服器,伺服器處理這個請求並返回一個「回應」。

請求(Request)

請求通常包含以下幾個關鍵部分:

  • URL:代表 API 的具體資源位置。例如,https://api.example.com/orders 可能是一個獲取訂單的 API URL。
  • HTTP 方法:指示伺服器應如何處理該請求。常見的 HTTP 方法包括 GET、POST、PUT、DELETE 等(後面有更多介紹)。
  • 標頭(Headers):附加在請求上的其他資訊,例如商店 ID、消費者 ID 等驗證序號。
  • 主體(Body):一些請求方法(如 POST 和 PUT)可能會包含請求主體,像是若要透過 API 更新資料,就會將要更新的內容填寫在 Body,通常以 JSON 或 XML 格式傳遞。

回應(Response)

回應是伺服器根據請求返回的結果。回應通常包括以下幾個部分:

  • 狀態碼(Status Code):用來指示請求是否成功。常見的狀態碼有:
    • 200:成功(OK)
    • 400:壞請求(Bad Request),表示客戶端錯誤,如請求格式錯誤。
    • 401:未授權(Unauthorized),表示需要身份驗證。
    • 404:未找到(Not Found),表示請求的資源不存在。
    • 500:內部伺服器錯誤(Internal Server Error),表示伺服器端出現問題。
  • 回應主體(Response Body):通常是 JSON 或 XML 格式的數據,表示伺服器處理請求的結果,像是錯誤原因或獲得的資料。

⠀⠀


⠀⠀

二、常見 HTTP 方法及其用途

⠀⠀

API 通常會使用不同的 HTTP 方法來進行不同的操作,這些方法代表了對資源的不同處理方式。

1. GET

  • 作用:用來從伺服器上獲取資料(例如數據、訂單、商品資訊)。
  • 舉例:使用 API 獲取訂單資訊或消費者資訊。
GET https://api.example.com/orders/12345

這個方式可以獲取「訂單ID = 12345」的詳細資訊。

2. POST

  • 作用:用來向伺服器發送資訊,以建立新的資料(如上架新商品、建立新用戶等)。
  • 舉例:使用 API 建立一個新商品。
POST https://api.example.com/product

這個方式可以在對方的平台建立一個商品。但當然除了 URL 本身,還需要在 Body 填上商品的相關資訊,像是商品名稱、價格。

3. PUT

  • 作用:用來更新伺服器上的現有資料。相比於 POST 的「建立新資料」,PUT 是「覆蓋舊資料」,意思是將請求中的所有資料都覆蓋上原有資料。
  • 舉例:使用 API 更新某個消費者的資訊。
PUT https://api.example.com/customers/12345

這個方式可以將消費者資訊換成正確的姓名、電話、地址等。

4. PATCH

  • 作用:用來對現有資料進行部分更新。相比於 PUT 的「覆蓋舊資料」,PATCH 是「更新部分資料」,若請求內沒有包含的就不會更新。
  • 舉例:更新訂單中的特定項目而不是整個訂單。
PATCH https://api.example.com/customers/12345

這個方式可以只改消費者資訊的姓名,但其他欄位不更新。

5. DELETE

  • 作用:用來刪除伺服器上的資料。
  • 舉例:使用 API 刪除某個消費者資料。
DELETE https://api.example.com/customers/12345

這個方式可以將「消費者ID=12345」的資料進行刪除。

⠀⠀


⠀⠀

三、常見的錯誤訊息及其處理方式

⠀⠀

在 API 呼叫過程中,有時會遇到錯誤,工作時的口語都會說「API 打不通」。

常見的 HTTP 錯誤代碼可以幫助產品經理更好地溝通問題,並與技術團隊協作解決這些問題,但不同開發團隊使用的代碼都不太一樣,比較常見的像是:

⠀⠀

1. 400 — 壞請求(Bad Request)

這是因為請求格式錯誤或缺少必要的參數所導致的。通常發生在請求的參數、JSON 格式不正確的情況下。

  • 解決方法:檢查請求的 URL、參數和主體,確保它們符合 API 的要求。

2. 401 — 未授權(Unauthorized)

這表示用戶沒有適當的身份驗證、像是沒有 API key,無法訪問資料。

  • 解決方法:確保您已經提供正確的 API 密鑰或身份驗證憑證。

3. 403 — 禁止(Forbidden)

這表示用戶沒有權限訪問所請求的資料,即使身份驗證成功。

  • 解決方法:確認您是否有權限進行該操作,並檢查 API 的權限設置。

4. 404 — 未找到(Not Found)

這表示所請求的資料不存在或 URL 錯誤。

  • 解決方法:檢查請求的 URL,確認資料是否存在以及拼寫是否正確。

5. 500 — 內部伺服器錯誤(Internal Server Error)

這表示伺服器端出現了無法處理的錯誤。

  • 解決方法:通常這種錯誤需要技術團隊來排查伺服器端的問題。

⠀⠀


⠀⠀

四、實際應用:API 呼叫情境分析

⠀⠀

1. 獲得平台訂單

情境:透過 API 獲取電商平台上的訂單資料,以便了解當月銷售狀況。

  • 使用方法:可以用 GET 方法來獲取訂單資訊。通常,打 API URL 時需要提供一個訂單 ID 或某個日期範圍來篩選訂單。
  • 發送請求
GET https://api.example.com/orders?startDate=2023-01-01&endDate=2023-01-31
  • 處理回應:以上述為例,若只有日期範圍,則對方會回傳指定日期範圍內的所有訂單。

⠀⠀

2. 獲得商品資訊

情境:透過 API 查詢某個商品的詳細資料。

  • 使用方法:與獲取訂單類似,也是使用 GET 方法。
  • 發送請求
GET https://api.example.com/product/12345
  • 處理回應:伺服器返回這個商品的詳細資訊,包括商品名稱、商品特色、商品價格、商品庫存、商品規格等。

⠀⠀

3. 修改商品資訊

情境:透過 API 更新某商品的價格和成本。

  • 使用方法:更新整個商品資訊時,使用 PUT 方法進行覆蓋。
  • 發送請求
PUT https://api.example.com/products/67890
  • 請求主體:
{   "price": 299,   

"cost": 100 }
  • 處理回應:伺服器返回更新後的商品資料,確認修改是否成功。

⠀⠀


⠀⠀

總結

作為產品經理,API 幾乎是一定會碰到的名詞,特別是 HTTP 方法、常見錯誤代碼。

例如測試產品功能時,有時會需要自己透過 Postman(一個打 API 的小工具 )去測試 API 的正確與否。

如對這系列文章興趣可以再觀看:

留言
avatar-img
留言分享你的想法!
avatar-img
張家惟 Evan Chang的沙龍
110會員
190內容數
《思維的創意想像》是工作之餘發起的 Side Project,因為近期快速吸收各種資訊跟商業知識(Input),但一直沒有地方輸出(Output),因此想透過這系列記錄學到的內容,包含商業知識、產業洞見,或是職場分享等等,目前已有產品開發、客戶成功、社群行銷、思維增長、職場日記等系列文章。
2025/04/20
從 ChatGPT、Claude、Gemini 各種模型的出現,「AI 是否會取代 PM / UX / RD」一直是軟體業在討論的話題,AI 已能撰寫 PRD 產品需求文件、分析用戶、設計原型 Prototype,甚至提供產品決策建議,甚至對於一些產品主管來說,只會執行的初級產品經理職缺可能會越來越
Thumbnail
2025/04/20
從 ChatGPT、Claude、Gemini 各種模型的出現,「AI 是否會取代 PM / UX / RD」一直是軟體業在討論的話題,AI 已能撰寫 PRD 產品需求文件、分析用戶、設計原型 Prototype,甚至提供產品決策建議,甚至對於一些產品主管來說,只會執行的初級產品經理職缺可能會越來越
Thumbnail
2025/04/17
在電商產業擔任產品經理,最常被問的就是「AI 可以在電商平台做哪些事」,像是個人化商品推薦、文案生成、加速上架、AI 客服等,市面上已陸續有 AI 功能逐漸釋出,但 AI 協助購物這段流程要怎麼進行,這篇想記錄初步想法。
Thumbnail
2025/04/17
在電商產業擔任產品經理,最常被問的就是「AI 可以在電商平台做哪些事」,像是個人化商品推薦、文案生成、加速上架、AI 客服等,市面上已陸續有 AI 功能逐漸釋出,但 AI 協助購物這段流程要怎麼進行,這篇想記錄初步想法。
Thumbnail
2025/04/12
Retrospective 是敏捷流程中的回顧環節,對產品經理來說是一個可以回顧過往、反思的時刻,這篇會記錄 Retro 的重點,以及產品經理可以如何運用 Retro,讓產品團隊提升開發效率。
Thumbnail
2025/04/12
Retrospective 是敏捷流程中的回顧環節,對產品經理來說是一個可以回顧過往、反思的時刻,這篇會記錄 Retro 的重點,以及產品經理可以如何運用 Retro,讓產品團隊提升開發效率。
Thumbnail
看更多
你可能也想看
Thumbnail
家中修繕或裝潢想要找各種小零件時,直接上網採買可以省去不少煩惱~看看Sylvia這回為了工地買了些什麼吧~
Thumbnail
家中修繕或裝潢想要找各種小零件時,直接上網採買可以省去不少煩惱~看看Sylvia這回為了工地買了些什麼吧~
Thumbnail
👜簡單生活,從整理包包開始!我的三款愛用包+隨身小物清單開箱,一起來看看我每天都帶些什麼吧🌿✨
Thumbnail
👜簡單生活,從整理包包開始!我的三款愛用包+隨身小物清單開箱,一起來看看我每天都帶些什麼吧🌿✨
Thumbnail
創作者營運專員/經理(Operations Specialist/Manager)將負責對平台成長及收入至關重要的 Partnership 夥伴創作者開發及營運。你將發揮對知識與內容變現、影響力變現的精準判斷力,找到你心中的潛力新星或有聲量的中大型創作者加入 vocus。
Thumbnail
創作者營運專員/經理(Operations Specialist/Manager)將負責對平台成長及收入至關重要的 Partnership 夥伴創作者開發及營運。你將發揮對知識與內容變現、影響力變現的精準判斷力,找到你心中的潛力新星或有聲量的中大型創作者加入 vocus。
Thumbnail
本文深入探討 Web API 與 HTTP 協議,解釋 HTTP 請求方法 (GET, POST, PUT, PATCH, DELETE)、HTTP 結構 (Headers, Body, 狀態碼),。透過說明各種 HTTP 狀態碼,讀者可以更深入理解 Web API 的設計與應用。
Thumbnail
本文深入探討 Web API 與 HTTP 協議,解釋 HTTP 請求方法 (GET, POST, PUT, PATCH, DELETE)、HTTP 結構 (Headers, Body, 狀態碼),。透過說明各種 HTTP 狀態碼,讀者可以更深入理解 Web API 的設計與應用。
Thumbnail
API(Application Programming Interface,應用程式介面)可以視為不同軟體系統之間的溝通橋梁,讓雙邊可以交換數據並執行各種功能。這篇會記錄產品經理一定要知道的幾個 API 概念,像是常見的錯誤代碼以及不同的 HTTP 方法(如 PUT、GET、POST)和實際案例說明
Thumbnail
API(Application Programming Interface,應用程式介面)可以視為不同軟體系統之間的溝通橋梁,讓雙邊可以交換數據並執行各種功能。這篇會記錄產品經理一定要知道的幾個 API 概念,像是常見的錯誤代碼以及不同的 HTTP 方法(如 PUT、GET、POST)和實際案例說明
Thumbnail
先前幾篇筆記介紹了網路請求,瀏覽器儲存資料的方式,那麼實務上,前端最常需要發送網路請求的時候,就是透過呼叫 API,去向後端工程師發送/請求資料,所以今天來記錄什麼是 API吧!
Thumbnail
先前幾篇筆記介紹了網路請求,瀏覽器儲存資料的方式,那麼實務上,前端最常需要發送網路請求的時候,就是透過呼叫 API,去向後端工程師發送/請求資料,所以今天來記錄什麼是 API吧!
Thumbnail
在這一課中,我們將學習如何在Python中使用requests模塊發送HTTP請求。 發送GET請求requests.get() 函數用於發送GET請求。
Thumbnail
在這一課中,我們將學習如何在Python中使用requests模塊發送HTTP請求。 發送GET請求requests.get() 函數用於發送GET請求。
Thumbnail
上篇記錄了關於 HTTP request 的筆記,這篇則是對於請求的回應紀錄~
Thumbnail
上篇記錄了關於 HTTP request 的筆記,這篇則是對於請求的回應紀錄~
Thumbnail
呼叫API,並透過API響應的內容取到需要的值
Thumbnail
呼叫API,並透過API響應的內容取到需要的值
Thumbnail
上一篇【瀏覽器與伺服器是如何溝通的?】有說瀏覽器和伺服器的溝通橋樑是「網路請求」,這篇就來記錄一下,我目前學習到的網路請求是什麼~
Thumbnail
上一篇【瀏覽器與伺服器是如何溝通的?】有說瀏覽器和伺服器的溝通橋樑是「網路請求」,這篇就來記錄一下,我目前學習到的網路請求是什麼~
Thumbnail
你想像有一個黑盒子,它會跟你說輸入一個input,而會得出什麼Output,而你要把這個Input傳遞給黑盒子是透過http的方式
Thumbnail
你想像有一個黑盒子,它會跟你說輸入一個input,而會得出什麼Output,而你要把這個Input傳遞給黑盒子是透過http的方式
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News