ASP.NET POST-DATA截断为49152字节(48K)

我收到错误,其中viewstate无法解码,并且一些错误追溯到http post数据被截断为恰好48K(49152)字节的事实.

这是listed作为.NET 2.0 SP1中的fixed错误之一.我目前有.NET 3.5 SP1.

每个帖子似乎都没有发生这个问题.有任何想法吗?

07002 Problems that are fixed in the .NET Framework 2.0 Service Pack 1

07003 FIX: The data in a POST request is truncated to 49,152 bytes when an ASP.NET-connected application receives the POST request

编辑:在我向表单添加编码指定后,在我的错误日志中捕获了其中一个错误.它显示内容类型已正确设置为url-encoded,内容长度超过49152.但错误日志中的后期数据转储再次正好是49152字节.我可以通过从页面多次单击“提交”按钮来重新创建它.我认为用户这样做是因为页面由于某种原因处理得非常慢(之前要快得多).可能是随后的提交遭遇了这种截断.我的修复可能是再次使页面快速和/或从第一次单击禁用该按钮.

最佳答案 我知道IIS5有这个问题,它会截断48Kb以上的所有数据,除非表单是作为application / x-www-form-urlencoded发送的,试着将其设置为你的内容类型:

<form accept-charset="utf-8" 
      enctype="application/x-www-form-urlencoded" ... >

</form>

pen-tester可以解决这个问题.

如果您还搜索HTTP走私,您会发现同样的问题.

你可以在read more关于HTTP走私的信息.

点赞