URL 长度有限制吗?
原因是传说中GET方法是通过URL来传递 而URL的长度是受限的 而POST方法采用流的方式 理论上可以传递的容量是没有限制的
现在来看这个描述 “URL的长度是受限的” 具体是在哪里受限制呢?browser端还是server端呢?网上现在google出来的结果都是说url的长度实际上是受到browser的限制 如IE限定url长度为 字节 opera 是 Netscape 是 等等 据说HTTP协议本身对GET方法的长度没有限制 那么 如果不使用浏览器 而是从程序里发送HttpRequest的话 GET发送的长度就可以是无限的么?抱着这样的想法 进行了如下实验
在client端 用Java实现 向server端发送HttpRequest 使用GET方法
在server端 设计一个apache module 并将strlen(r >args) 用ap_rprintf输出 作为response 返回到Java端
通过不断增加GET方法传过去的字符串的长度 发现URL长度超过 字节时 Java抛出IO Exception: Server returned HTTP response code: for URL:
代表哪种错误呢?
Request URL Too Long (SEE: )
由此可见 Server端对于URL的长度是有限制的 那么对于GET方法可以传输的数据也是有限制的 只是这个限制可能根据服务器的处理能力而定 或者在哪里哪里配置 就不是很清楚了 (俺又开始瞎猜 这貌似不是什么好习惯的说)
下面开始瞎掰
lishixinzhi/Article/program/PHP/201311/20971
2023-07-25 广告