说明
http协议有多种请求方法,相当于 多种联系方式:发微信、打电话、发短信
相同
Get和Post都可以向 服务器端 发请求,两者都可以实现与服务器的通信
区别
应用场景
get:意味获取,是向 服务器 获取资源、获取数据,所以类似操作应该用 GET 请求
form表单指定
get方式提交超链接
引用js、引用css
<img src="">标签
post:意味传输,是向 服务器 传输数据、提交数据,所以类似操作应该用 POST 请求
传递数据的位置
GET将数据放在URL中
意味着GET不安全,如果登录时,将用户名、密码显示在地址栏中,直接暴露POST将数据放在body中。
POST也不安全,因为HTTP是明文传输抓包就能获取数据内容,要想安全还得加密
数据大小
GET提交的数据大小有限制
因为浏览器地址栏有长度限制,GET本身没有限制POST没有
数据编码
- GET对数据进行url编码
- POST支持多种编码
浏览器后退、刷新
GET回退、刷新无影响
POST后退会再次提交请求,刷新会提示
缓存
GET能被缓存
会被浏览器中会缓存,再次请求时,浏览器不会发送请求,而是使用上次请求获取到的结果。如:频繁访问同一静态资源(js、图片)时,只第一次发请求,后面不在发请求,直接使用第一次请求的结果POST不能
