如何優雅的編寫Java介面(安全性,可重複呼叫,穩定性,追溯性)

ZHAO金辉發表於2024-06-07

介面編寫注意事項

  1. 簽名:對外提供的介面要做簽名認證,認證不透過的請求不允許訪問介面、提供服務。

  2. 加密:敏感資料在網路傳輸過程中應該加密。

  3. IP白名單:限制請求的IP,增加IP白名單,一般在閘道器層處理。

  4. 限流:尤其是對外提供的介面,無法保障呼叫的頻率,應該做限流處理,保障介面服務正常提供服務。

  5. 引數校驗:即使前端做了非空,規範性校驗,服務端引數校驗仍然是非常必要的。

  6. 統一返回值:一個服務一套同意的資料返回結果和傳參規範。

  7. 統一異常封裝:系統報錯友好提示,避免暴露出sql異常的資訊給呼叫方。

  8. 請求日誌:記錄系統產生的日誌,方便快速定位分析問題。

  9. 冪等設計:對於一些涉及到資料一致性的介面一定要做好冪等設計,防止資料出現重複問題。

  10. 限制記錄條數:對於提供的大批次資料查詢介面,一定要限制請求的記錄條數。

  11. 壓測:上線前我們務必要對 API介面做一下壓力測試,知道各個介面的qps情況。以便於我們能夠更好的預估,需要部署多少伺服器節點,對於API介面的穩定性至關重要

  12. 非同步處理:如果同步處理業務,耗時會非常長。這種情況下,為了提升API介面的效能,我們可以改成非同步處理。

  13. 資料脫敏:關係到業務中使用者的敏感資料要進行脫敏處理。

  14. 完整的介面文件

公共資料介面API

https://www.zhihu.com/question/32225726

https://www.cnblogs.com/chen0307/p/9634848.html

https://www.kancloud.cn/lizhixuan/free_api

https://www.seniverse.com/api

https://apis.baidu.com/

相關文章