簡體   English   中英

IIS可以設置為阻止超過特定限制的API響應嗎?

[英]Can IIS be set up to block API Responses over a certain limit?

我們有一個充當API網關的應用程序,接聽電話並將它們路由到其他API,然后轉發響應。

在我們的設置中,我們確保開發API調用的開發人員不會通過上傳大量文件或發送過多的JSON有效負載來淹沒我們。 我們現在正試圖弄清楚如果他們進行返回過多數據的API調用,我們如何確保不會使它們泛濫。

有沒有辦法設置IIS或ASP.Net應用程序拒絕超過一定大小的API響應,就像我們拒絕超過一定規模的API請求一樣?

只是用明確的術語添加一個例子:

如果開發人員發出API請求以獲取其所有客戶,則API Gateway會將該請求傳遞給我們的內部Customers API。 如果Customers API響應600MB響應,我們希望阻止API網關的響應,然后我們將向開發人員發送響應,要求他們更改其請求以減少結果集。

響應沒有限制大小。 我們可以通過在響應頭中添加更多參數Content-Length來限制響應大小。

設置您可以在web.config文件中設置的請求限制:

    <system.web>
<httpRuntime maxRequestLength="2147483647" />

要么

 <system.webServer>
  <security>
    <requestFiltering>
      <requestLimits maxAllowedContentLength="2147483648" />
    </requestFiltering>
  </security>
</system.webServer>

要么

您還可以在web.config中設置以下代碼:

<configuration> 
   <system.web.extensions>
       <scripting>
           <webServices>
               <jsonSerialization maxJsonLength="50000000"/>
           </webServices>
       </scripting>
   </system.web.extensions>
</configuration> 

maxJsonLength配置JSON字符串的最大長度。

有關更多詳細信息,請參閱: jsonSerialization元素(ASP.NET設置架構)

問候,jalpa

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM