1

我有一个使用 servicestack v3.9 编写的服务。我正在尝试返回一个大型结果集,并且在我的客户端上收到 500 内部服务器错误。如果我查看错误的详细信息,我会看到结果列在异常中,但在 65536 个字符后被截断。我知道这是.net 施加的默认限制。我不知道如何为服务堆栈增加它。

我的客户端没有使用 Web 配置中的绑定连接到服务,因为它正在使用服务堆栈。对于 web api 调用,这似乎是您要解决此问题的地方,即在绑定中增加 maxReceivedMessageSize。我猜也有一些方法可以增加服务堆栈的这个限制??

4

1 回答 1

1

ServiceStack 本身不施加任何限制或配额,因此您的服务命中的任何限制都是 IIS/ASP.NET,可以像任何其他 ASP.NET Web 应用程序一样增加。

下面的 Web.Config 示例配置显示了如何在 IIS6 和 IIS7 中将请求限制增加到 1GB:

<configuration>
    <system.web>
        <httpRuntime maxRequestLength="1048576" />
    </system.web>
</configuration>

对于 IIS7 及更高版本,您还需要添加以下行:

 <system.webServer>
   <security>
      <requestFiltering>
         <requestLimits maxAllowedContentLength="1073741824" />
      </requestFiltering>
   </security>
 </system.webServer>
于 2014-12-11T17:07:55.447 回答