文章目錄
- 1、如何實作接口幂等性
1、如何實作接口幂等性
- 唯一id。每次操作,都根據操作和内容生成唯一的id,在執行之前先判斷id是否存在,如果不存在則執行後續操作,并且儲存到資料庫或者redis等。
- 服務端提供發送token的接口,業務調用接口前先擷取token,然後調用業務邏輯接口請求時,把token攜帶過去,伺服器判斷token是否存在redis中,存在表示第一次請求,可以繼續執行業務,執行業務完成後,最後需要把redis中的token删除
- 建去重表。将業務中有唯一辨別的字段儲存到去重表,如果表中存在,則表示已經處理過了
- 版本控制。增加版本号,當版本号符合時,才能更新資料
- 控制狀态。例如訂單有狀态已支付 未支付 支付中 支付失敗,當處于未支付的時候才允許修改為支付中等