在API的世界裡,HTTP方法扮演著非常重要的角色,定義了「程式對伺服器要做什麼事」,可以把HTTP方法想像成日常生活中的動詞,例如「查詢」、「新增」、「修改」、「刪除」,每一個操作對應不同的行為,理解這些方法是設計和使用API的基礎,因為如果方法用錯了,可能會造成資料錯誤,甚至影響整個系統的穩定性。
最常見的 HTTP 方法有以下幾種:
GET:用於讀取資料,例如查詢訂單列表或查看使用者資訊。是一種「只讀」操作,並不會改變伺服器上的資料,可以把它想像成「問問題」而不是「動手改東西」。例如,當你在網頁上輸入關鍵字搜尋時,背後很可能就是透過GET請求來取得結果。
POST:用於新增資料,例如新增一筆訂單或註冊新的使用者。這個操作會改變伺服器的狀態,因此需要附帶請求內容(例如JSON格式的資料)來告訴伺服器要新增什麼,如果資料不完整或格式錯誤,就可能導致請求失敗或新增錯誤資料。
PUT:用於更新既有資料,例如修改訂單狀態或更新使用者的電子郵件。通常需要指定要修改的對象(例如某筆訂單的ID),以確保正確修改指定的資源。PUT常被設計為「完整替換」,也就是一次更新整個資源。
DELETE:用於刪除資料,例如移除一筆訂單或刪除某個帳號。這種操作會永久影響伺服器資料,因此在實際系統中,通常會加入額外的驗證或權限檢查,以避免誤刪。
除了這四個最常見的方法,還有一些進階的HTTP方法,例如PATCH(只更新部分資料,而不是整個資源)、HEAD(只取得回應的標頭,不要內容)等,在不同的情境下也會用到。
HTTP方法的使用通常遵循RESTful原則。REST強調「一種方法對應一種資源操作」,這樣不僅能讓API設計一致、可預測,也能讓其他開發者快速理解API的用途。例如,一看到 /orders
的GET,就知道是查詢訂單;看到 /orders
的POST,就知道是新增訂單。合理使用HTTP方法,不僅提升程式的可讀性和維護性,還能降低出錯的機會,讓整個系統更穩定、安全。