繁体   English   中英

ASP.NET Web API请求未达到控制器操作

[英]ASP.NET Web API request does not reach controller action

我在使用HttpClient的PostAsJsonAsync方法将“大”对象发布到Web api时遇到麻烦。 这些对象包含一个base64编码的图像文件。

经过一段类似于客户端的超时设置的时间段后,异常

“任务被取消了。”

HttpClient抛出。 超时已经设置得很高(10分钟)。 仅当文件大于约2 MB时才会发生这种情况。 任何较小的都可以。 我知道该请求甚至没有在controller方法中命中第一行代码,因为第一行是一个日志记录行,并且日志为空。 服务器事件查看器中没有例外。

很难解决此问题,因为当我在本地IIS上部署Web API时,控制器工作正常。 但是,当我在Azure VM上部署它时,它仅适用于小文件。 web.config文件是相同的。

maxRequestLength已经设置得足够高。

<httpRuntime targetFramework="4.5.2" maxRequestLength="1048576" />

我只是尝试将API部署为应用程序服务,而不是在Azure VM中托管IIS。 完全相同的事情在那里发生。

您也可以尝试设置此限制:

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

请注意,与maxRequestLength参数相反,此值以字节为单位。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM