语义
get方法请求指定的资源
post方法发送数据给服务器,可以修改服务器上的资源
安全
说一个HTTP方法是安全的,是说这是个不会修改服务器的数据的方法。–MDN
get方法用于获取数据没有副作用是安全的
post方法会引起服务端状态的改变是不安全的
幂等
一个HTTP方法是幂等的,指的是同样的请求被执行一次与连续执行多次的效果是一样的,服务器的状态也是一样的。–MDN
get方法是幂等的,post方法非幂等
可缓存
get方法可缓存,post方法不可缓存
数据
get方法请求的数据会附在URL后面(也就是出现在http请求头),以?分隔URL和数据,参数之间用&分割,能传输的数据大小取决于浏览器或操作系统对URL长度的限制,由于参数出现在URL上面所以比post请求安全性低(浏览器历史记录)
post方法的请求数据会放在http请求包体中,数据大小理论上没有限制,实际受限于服务器的处理能力