跳轉到主要內容
如果某個 API 呼叫或操作無論執行多少次都產生相同結果,則該操作是冪等的。這可確保重複呼叫不會造成非預期的副作用,從而防止意外的重複請求。 Fluz API 支援冪等性請求,以防止操作被意外重複執行。藉由使用用戶端產生的唯一冪等性金鑰,API 可確保在 10 分鐘期間內,若提供相同的冪等性金鑰,相同的請求不會被處理多次。

運作方式

當請求附帶冪等性金鑰時:
  • 伺服器會快取初始回應本文及其狀態碼。
  • 如果收到具有相同冪等性金鑰與回應碼的重複請求,API 將回傳快取結果,而不會重新執行該操作,特別是在操作內發生錯誤時。此機制藉由在錯誤情境下也回傳一致結果,來避免非預期的重複處理。

產生唯一的冪等性金鑰

客戶端需負責建立與更新其冪等性金鑰。為確保唯一性:
  • 強烈建議使用 V4 UUID,可透過以下等函式庫產生: https://github.com/uuidjs/uuid
  • 做為最佳實務,冪等性金鑰應在一段時間後到期,以避免重複使用並確保請求的唯一性。Fluz 會在 10 分鐘後使每個唯一的冪等性金鑰到期。

客戶端需要:

  1. 一個產生並儲存新冪等性金鑰的操作
  2. 一個依據客戶端到期策略移除舊金鑰的操作

必要的操作

並非所有 API 操作都需要冪等性金鑰。為確保資料一致性,Fluz 針對以下關鍵操作要求使用冪等性: 對於這些操作,idempotencyKey 輸入變數為必填。

範例輸入

Fluz 需要此操作提供冪等性金鑰。

後續步驟

購買禮品卡

在最常見的資金移動變更作業中,看看冪等性金鑰的實際運作。

地址格式

另一個常見的被拒原因——如何格式化地址以便首次就能通過驗證。