19

我在 ASp .net C# 中创建了一个 RESTful POST Web 服务,IIS 托管该服务。

我的服务接受 XML 文件作为输入,当大小超过 65KB 时,我收到以下错误消息:

远程服务器返回错误:(400) 错误请求。

我的问题是双重的,首先是 IIS 服务器为 POST 请求设置了默认限制,其次如何更新它?

非常感谢

4

2 回答 2

15

John Källén 的回答是正确的,但在我的情况下,我定义了一个端点,因此设置 maxReceivedMessageSize 必须如下:

<standardEndpoints>
    <webHttpEndpoint>
        <standardEndpoint name="" 
                         helpEnabled="true" 
                         automaticFormatSelectionEnabled="true"                   
                         maxReceivedMessageSize="2147483647">
        </standardEndpoint>
    </webHttpEndpoint>
</standardEndpoints>
于 2013-02-26T01:59:19.960 回答
13

您是否尝试将以下内容添加到您的 web.config 中?

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

这会将您允许的内容长度增加到一兆字节。此外,您可能希望将 WCF 绑定的 maxReceivedMessageSize 属性设置为大于默认的 64k:

<webHttpBinding>
    <binding name="MessageSizeWeb" maxReceivedMessageSize="2147483647" />
</webHttpBinding>
于 2013-02-26T00:50:31.333 回答