功能不同
get: 表示获取 拿取 的意思 主要是从服务器上获取数据。 一般用于查询类的请求
post:表示提交 主要是向服务器传送数据 一般修改类的操作 我们会用post请求
但这不绝对 现在很多网站 即便是查询类的操作 也喜欢用post去做 因为这样可以把参数放在表单中
这就涉及到下面的角度
存放位置不同
get一般把参数数据队列加到url中 请求正文一般为空 在url中也是可见的
但post请求数据放在请求正文中 url中不可见 需要通过抓包查看参数
安全性不同
所以正因为存放位置的区别 导致他们之间安全性也不同
传送的数据量不同
你在百度搜索内容的时候 如果你搜的内容很长 百度会给你截取 这是因为百度是将你查询的内容作为参数放在url中 用get请求 但是url长度存在限制 导致你参数长度也有限制 不同的浏览器url限制不一样,一般不能大于2KB。
但是post一般被默认为不受限制
编码形式不同
你如果在url中出现中文 会被url编码 但是post请求的话 请求参数在正文中 是不会立马编码的
浏览器机制不同
浏览器会主动缓存get请求 保留get请求的历史记录 你可以通过浏览器的历史记录 查看 但是post不会
而且post回退还有可能造成数据的重复提交