接口入參保護的含義


最近學習《阿里巴巴java開發手冊》

第七章控制語句中,第6點提到了入參保護,原文如下:

6. 【推薦】接口入參保護,這種場景最常見的是用於做批量操作的接口。

 

工作中很少提到“入參保護”這個詞,更多的是“參數校驗”的說法;談下個人對接口入參保護的理解:

 

1、接口入參保護,“保護”的是服務端應用,即接口提供方,最常見的做法就是校驗入參的有效值范圍和設置批量操作白名單;

  比如,接口入參中包含日期時,校驗日期必須在N天范圍內,或者請求返回的記錄總數必須在X條以內(比如10W條,否則縮小請求查詢的記錄范圍),或者請求返回的記錄必須分頁查詢返回;

  開發手冊中,尤其提到的場景就是批量操作,因為批量操作非常耗時耗資源(服務端),批量操作的批量數應該有上限,而不是無限的。假如客戶端請求一次批量操作10W筆轉賬訂單,服務器應該果斷拒絕,很不是很SB的忠實執行,會對服務端造成嚴重影響的批量請求,服務器端應做好保護性編程,必要時應直接失敗,並在Result中返回明確的errorCode和errorMsg;

  而且,對應批量操作,實際應用中還會配置批量操作白名單!

2、入參保護,一般都是通過衛語句實現:if(請求記錄>10000條) return;直接返回。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM