我遇到一个问题,每当我通过Citrix NetScaler将JSON发布/运行到运行IIS 7.5的服务器时,我就会收到413请求实体太大。
我们尝试将aspnet:MaxJsonDeserializerMembers设置为30000,40000和512000,如下所示:
<appSettings>
<add key="aspnet:MaxJsonDeserializerMembers" value="xxx" />
</appSettings>
以及设置<jsonSerialization maxJsonLength="xxx"/>
但没有任何解决方案。
在我们没有Citrix NetScaler的本地测试环境中设置aspnet:MaxJsonDeserializerMembers,效果很好。
我应该知道NetScaler中有任何设置吗?或者是否有一些我必须注意的IIS设置,考虑到这在我们的本地测试环境中工作,我倾向于后者,但我不是所有的基础隐蔽。
编辑:经过进一步调查后,看起来NetScaler肯定是源码,因为我们可以从NetScaler后面发布到API。
答案 0 :(得分:1)
事实证明,它实际上是两种产品的组合。
在内部我们使用SSL和客户端证书,这意味着我们需要配置一个名为&#34; uploadReadAheadSize&#34;
的IIS属性这是在主机配置或IIS管理器中完成的。
...
<system.webServer>
<serverRuntime uploadReadAheadSize="{BYTES}" />
</system.webServer>
...
我们现在使用10 MB = 10485760字节表示足够了。由于这默认为48KB,因此您可以快速达到此目的。