关于get和post请求的一些小理解。

Posted xyyyy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于get和post请求的一些小理解。相关的知识,希望对你有一定的参考价值。

  最近在学php,然后就突然想琢磨一下前端get和post请求的差异。

  发现了几个以前的误区,比如:GET的URL会有长度上的限制,则POST的数据则可以非常大。但事实是 HTTP协议对GET和POST都没有对长度的限制。

  get请求将请求参数包装在header里面而目前的游览器的url只支持一定的长度,所以造成了get请求参数长度需要规范,但是正是这个原因恰恰让我们觉得get请求是有固定参数长度的。当然还有可能是因为url过长导致服务端响应缓慢。举个最简单的例子,

      IE6.0  :  url最大长度2083个字符,超过最大长度后无法提交。
      IE7.0  :  url最大长度2083个字符,超过最大长度后仍然能提交,但是只能传过去2083个字符。

      IE8.0  :  url最大长度4076个字符,超过该长度会自动忽略后面的内容.

      firefox 3.0.3   :  url最大长度7764个字符,超过最大长度后无法提交。
      Opera 9.52     :  url最大长度7648个字符,超过最大长度后无法提交。
      Google Chrome 2.0.168   :  url最大长度7713个字符,超过最大长度后无法提交。

技术分享图片

如图,这是我自己访问我自己的PHP接口,参数大小接近7k这已经轻松打破了网上的一些1024字节长度的谣言了。




以上是关于关于get和post请求的一些小理解。的主要内容,如果未能解决你的问题,请参考以下文章

关于 HTTP GET/POST 请求参数长度最大值的一个理解误区(转载)

Get与Post的小知识

python 关于post和get的区别

php小问题总结

【HTTP】GET传参最大长度的理解误区

将 Node.js GET /POST 请求更改为 Ajax