使用ASP.NET兼容模式的WFC Rest服务 - 如何设置大型POST请求?

时间:2015-06-16 15:49:28

标签: asp.net wcf rest iis post

早安社区,我希望你能帮助我解决我现在面临的问题。 我有一个使用ASP.NET兼容模式的WFC REST服务(所以我可以忽略url中的.svc端点)。 我的REST服务也在接收XML并返回XML。当使用不同的POST请求进行测试时,我收到错误400的POST。我的XML测试文件介于100 Kb和200 Kb之间。

这是我的Web.config:

<?xml version="1.0"?>
<configuration>
    <system.web>
      <compilation debug="true" targetFramework="4.0" />
    </system.web>
  <system.serviceModel>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="True" />
    <standardEndpoints>
      <webHttpEndpoint>
        <standardEndpoint helpEnabled="true" automaticFormatSelectionEnabled="true" />
      </webHttpEndpoint>
    </standardEndpoints>
  </system.serviceModel>
</configuration>

我在互联网上看到各种关于允许POST更多大小的帖子,但我不知道如何使用ASP.NET兼容性。

有人可以帮我配置吗?

1 个答案:

答案 0 :(得分:0)

绝对是,这对我来说是一个愚蠢的问题......我只是想通了我们可以从 standardEnpoint webHttpEndpoint 标记>部分。

在这种情况下,我修改为允许更大的消息大小超过64 Kb。

<?xml version="1.0"?>
<configuration>

    <system.web>
      <compilation debug="true" targetFramework="4.0" />
    </system.web>
  <system.serviceModel>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="True" />
    <standardEndpoints>
      <webHttpEndpoint>
        <standardEndpoint helpEnabled="true" automaticFormatSelectionEnabled="true" maxReceivedMessageSize="MAX_SIZE" />
      </webHttpEndpoint>
    </standardEndpoints>
  </system.serviceModel>
</configuration>

MAX_SIZE 是您希望在应用程序中允许的字节大小。