对于网上对get和post区别的长篇大论,我只想说一些干货其中最重要的是:GET和POST本质上两者没有任何区别。他们都是HTTP协议中的请求方法。底层实现都是基于TCP/IP协议。所谓区别,只是浏览器厂家根据约定,做得限制而已。
而我们一般所说的区别一般指:
1、GET请求的参数是放在URL里的,POST请求参数是放在request body里的。
2、GET请求的URL传参有长度限制,而POST请求没有长度限制。
3、GET请求的参数只能是ASCII码,所以中文需要URL编码,而POST请求传参没有这个限制。
4、GET在浏览器回退时是无害的,而POST会再次提交请求。
5、GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。
6、get请求会浏览器主动cache,而post支持多种编码方式。
7、get比post更不安全,因为参数直接暴露在url中,所以不能用来传递敏感信息。
GET产生一个TCP数据包(服务器响应200);POST产生两个TCP数据包(服务器响应100 continue;200 ok);
好了,这就是Get和Post的所谓的区别,希望对你能有帮助。