Ed *_*ess 75
不在RFC中,不,但有实际限制.
HTTP协议不对URI的长度设置任何先验限制.服务器必须能够处理它们所服务的任何资源的URI,并且如果它们提供可以生成这种URI的基于GET的表单,它应该能够处理无限长度的URI.如果URI长于服务器可以处理的长度,服务器应该返回414(Request-URI Too Long)状态(参见10.4.15节).
注意:服务器应该谨慎依赖于大于255字节的URI长度,因为某些较旧的客户端或代理实现可能无法正确支持这些长度.
Vin*_*vic 53
这篇文章总结得很好
简介:它依赖于实现,因为RFC中没有指定的限制.使用多达2000个字符(IE的限制)是安全的.如果你在接近这个长度的任何地方,你应该确保你真的需要那么长的URI,也许一个替代设计可以解决这个问题.
即使用于发送数据,URI也应该是可读的.
One*_*rld 18
正如用户Erickson所要求,我发表我的评论作为答案:
我已经在IE8,IE9,FF14,Opera11,Chrome20和Tomcat 6.0.32(全新安装),服务器端的Jersey 1.13上做了一些测试.我使用了jQuery函数$ .getJson和JSONP.结果:所有浏览器允许最多5400个字符.FF和IE9最多可以达到6200个字符.以上所有内容均返回"400 Bad request".我没有进一步调查是什么导致400.我找到的最大值我很好,因为在我的情况下我需要大约2000个字符.
Joa*_*son 17
规范不限制HTTP Get请求的长度,但不同的浏览器实现它们自己的限制.例如,Internet Explorer具有以2083个字符实现的限制.
小智 13
W3C毫不含糊地否认这是一个神话
http://www.w3.org/2001/tag/doc/get7#myths
| 归档时间: |
|
| 查看次数: |
181065 次 |
| 最近记录: |