我有以下控制器來獲取 JSON 數據 [HttpPost] [Route("Clients/Active")] public IHttpActionResult SearchClient(ClientSearchParams p) { List<ClientViewModel> _result = PeopleComponent.SearchClient(p).ToList(); return Ok<IEnumerable<ClientViewModel>>(_result); }適用于較小的數據(幾千行)并返回完整格式的 JSON,但當數據稍大時,響應偶爾會被截斷但 200 OK。知道為什么控制器會隨機截斷它。完全糊涂了。
3 回答

holdtom
TA貢獻1805條經驗 獲得超10個贊
Webapi 有一個默認的最大請求大小。它會自動截斷大于此值的消息并為您提供無效的 JSON。根據您的 .NET 核心版本,您可以增加它 -
例如,在 .NET 4.5 中,您可以編輯 Web.Config 以包含以下內容:
<system.web>
<authentication mode="None" />
<customErrors mode="Off" />
<compilation debug="true" targetFramework="4.5.2" />
<httpRuntime targetFramework="4.5.2" maxRequestLength="100000"/>
</system.web>

絕地無雙
TA貢獻1946條經驗 獲得超4個贊
感謝你的幫助。這一行是 web.config 是真正的罪魁禍首,它啟用了 http 日志記錄。我將 http logging 設置為 false 并且它可以工作 add key="ENABLE_HTTP_LOGGING" value="true" 將其設置為 false 并且一切正常。
- 3 回答
- 0 關注
- 249 瀏覽
添加回答
舉報
0/150
提交
取消