您现在的位置是:首页 > 编程开发 > asp.Net > asp.Net

asp.net – Http状态代码413

编辑:站长来源:网络整理作者: 未知2020-12-16asp.Net

简介我有一个包含普通Ajax Update面板的页面.有一个提交按钮,用于将用户选择发送到服务器.如果用户等待一两分钟,则服务器的响应是来自服务器的HTTP 413(请求实体太大).只有在我等待一两分钟后尝试重新提交时才会发生这种情况.如果页面的土地和提交表单,服务器能

我有一个包含普通Ajax Update面板的页面.有一个提交按钮,用于将用户选择发送到服务器.如果用户等待一两分钟,则服务器的响应是来自服务器的HTTP 413(请求实体太大).只有在我等待一两分钟后尝试重新提交时才会发生这种情况.如果页面的土地和提交表单,服务器能够处理它.

我修改了uploadReadAheadSize(如http://forums.asp.net/t/1574804.aspx所述)并将其设置为200,000,000 – 问题仍然存在

Http请求

POST https://server/somepage HTTP/1.1
Accept: */*
Accept-Language: en-US,zh-Hans;q=0.9,zh-CN;q=0.8,zh-SG;q=0.7,zh-Hant;q=0.6,zh-HK;q=0.4,zh-MO;q=0.3,zh-TW;q=0.2,zh;q=0.1
Referer: https://server/somepage
x-requested-with: XMLHttpRequest
x-microsoftajax: Delta=true
Content-Type: application/x-www-form-urlencoded; charset=utf-8
Cache-Control: no-cache
Accept-Encoding: gzip,deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; InfoPath.3; .NET4.0E)
Host: some-server
Content-Length: 86124
Connection: Keep-Alive
Form-Data...........

该请求通过SSL.

我还尝试在web配置中编辑httpruntime配置

<httpRuntime executionTimeout="3600" maxRequestLength="1902400" />

解决方法

这解决了错误.如果我能够正确描述问题,请纠正我.

SSL会打开安全隧道一段时间.因此,每当我尝试在该时间范围内发布数据时,一切都很顺利.但是一旦隧道关闭,服务器在客户端重新协商之前预加载请求.但预加载最大长度很小,因此失败了.

我试图将uploadReadAhead值设置为120,这大于实体请求大小约86,000.请求仍然失败(怪异…… ????).

一旦我将其设置为大约10 MB的值,它就没问题了.

很赞哦! ()

点击排行

本栏推荐

猜你喜欢