1. 概述
GET和POST是HTTP协议中的两种请求方式,而HTTP协议是基于TCP/IP的应用层协议,无论 GET 还是 POST,用的都是同一个传输层协议,所以在本质上,没有区别。但是由于HTTP的规定和浏览器/服务器的限制,导致它们在应用过程中,产生了一些区别。
2. 区别
报文格式不同。
3. GET请求传参长度的误区
我们经常说get请求参数的大小存在限制,而post请求的参数大小是无限制的。实际上HTTP 协议从未规定 GET/POST 的请求长度限制是多少。对get请求参数的限制是来源与浏览器或web服务器,浏览器或web服务器限制了url的长度。不同的浏览器和WEB服务器,限制的最大长度不一样。要支持IE,则最大长度为2083byte,若只支持Chrome,则最大长度 8182byte。
4. GET和POST在缓存上的区别
get请求类似于查找的过程,用户获取数据,可以不用每次都与数据库连接,所以可以使用缓存。
post不同,post做的一般是修改和删除的工作,须与数据库交互,所以一般不使用缓存。因此get请求适合于请求缓存。
参考文章: