我有一个动作,我要把它放在GET请求中。
网址是实时构建的,如下所示:
我收到404错误。
如果我用原来的%2C
替换,
我遇到了同样的问题,只需要更多的参数。
如果我用较少的参数发出相同的请求,它就可以了。
我已经有了这个:
<system.web>
<httpRuntime maxUrlLength="2097151" maxQueryStringLength="2097151" relaxedUrlToFileSystemMapping="true"/>
</system.web>
因为之前我告诉过我,我的maxQueryStringLength设置得太大了。
答案 0 :(得分:3)
无论您设置maxQueryStringLength
多大,都会有limit in the browsers。例如,某些浏览器支持的请求长度仅为2048个字符。你的更长(2440个字符)。您唯一能做的就是使用POST
代替GET
来发送大量数据,因为POST请求没有这样的限制。因此,您生成一个HTML <form>
元素,其中method="post"
和action
指向网址,其中包含此数据的隐藏字段,然后提交此表单。
答案 1 :(得分:2)
事实上,我被IIS限制阻止:maxUrl大小和最大查询大小(以八位字节为单位测量:
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxUrl="1048576" maxQueryString="1048576" />
</requestFiltering>
</security>
</system.webServer>
这解决了我的问题