19

サービスをホストするIISを使用して、ASp .net C#でRESTful POST Webサービスを作成しました。

私のサービスは入力として XML ファイルを受け入れ、サイズが 65KB を超えると、次のエラー メッセージが表示されます。

リモート サーバーがエラーを返しました: (400) 不正な要求。

私の質問は 2 つあります。1 つ目は、POST 要求に対して IIS サーバーによって設定された既定の制限があり、2 つ目はこれを更新するにはどうすればよいですか?

どうもありがとう

4

2 に答える 2

15

JohnKä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 に答える