我在 C# 中有一个 MVC3 站点,我有一个特定的视图正在从 JavaScript 函数提供查询参数,该函数通过以下方式重定向到该站点
window.location.href = "../ActionName?" + 查询字符串;
query_string 是由 JavaScript 函数构建的动态查询参数字符串。
这种奇怪的原因是有时相同的函数将 URL 传递给 ASP.Net webform,因为它必须使用reportviewer控件,在这种情况下,替代操作是保存一些参数,它传递给视图。(如果没有意义,可以详细说明)
在我将 [Authorize] 引入 action 方法之前,整个过程都很好。如果它就位,则中断,没有时也能正常工作,并且 [授权] 在所有其他方法上都可以正常工作。
在这种情况下,整个 URL 的长度为 966 个字符,经过研究,默认情况下maxQueryStringLength 的值似乎是 2048,但可以覆盖为任何整数类型的值,所以只是为了咧嘴笑,我添加了
<security>
<requestFiltering>
<requestLimits maxQueryString="2048"></requestLimits>
</requestFiltering>
</security>
密钥下的 web 配置文件的密钥。
那里没有快乐,所以我变得荒谬并使它成为 4096,仍然没有快乐。
现在整个 URL 为 966 个字符,授权属性不能认真添加另一个 1082-3130 个字符,所以我如何确定错误究竟是什么,或者为什么设置没有生效。
VS2010 专业版 SP1