Asp.net web api 超出了WebApi 2的最大请求长度
有人知道有没有办法捕捉到这个错误吗 本质上,我试图实现一些功能,允许用户将文件从网页上传到webapi控制器 这可以正常工作,但如果文件大小超过web.config中指定的最大大小,服务器将返回404错误 我希望能够截获这一点,并返回一个500错误以及消息,该消息可由客户端使用Asp.net web api 超出了WebApi 2的最大请求长度,asp.net-web-api,Asp.net Web Api,有人知道有没有办法捕捉到这个错误吗 本质上,我试图实现一些功能,允许用户将文件从网页上传到webapi控制器 这可以正常工作,但如果文件大小超过web.config中指定的最大大小,服务器将返回404错误 我希望能够截获这一点,并返回一个500错误以及消息,该消息可由客户端使用 我无法确定在WebApi中在何处执行此操作,因为我在Global.asax中实现的应用程序错误方法从未命中,而且IIS似乎没有将此消息传递给WebApi应用程序。尝试将IIS设置为接受2GB请求(以字节为单位) //2
我无法确定在WebApi中在何处执行此操作,因为我在Global.asax中实现的应用程序错误方法从未命中,而且IIS似乎没有将此消息传递给WebApi应用程序。尝试将IIS设置为接受2GB请求(以字节为单位)
//2GB
并为ASP.NET应用程序设置合理的请求大小(以KB为单位)
//4MB(默认值)
现在IIS应该允许小于2GB的请求传递到您的应用程序,但若请求大小达到4MB,应用程序将跳转到应用程序中。在那里,您可以管理您想要返回的内容
无论如何,大于2GB的请求总是会被IIS返回404.13
相关链接:
它在我的服务器上的外观:
<system.web>
<httpRuntime targetFramework="4.6.1" maxRequestLength="16240" />
</system.web>
您需要增加允许的最大请求大小。请参阅此答案:我已经这样做了,但我希望能够在超过此值时捕获实例中的错误。本文提供了有关上述配置的一些其他详细信息:
<system.web>
<httpRuntime maxRequestLength="4096" /> // 4MB (default)
</system.web>
<system.web>
<httpRuntime targetFramework="4.6.1" maxRequestLength="16240" />
</system.web>