Get 和 Post 作为前端常用的两种请求数据的方式,区别有哪些呢?
1、安全性:
- get请求的是用查询字符串拼接在url地址中,任何人豆科鱼查看
- post 请求的请求参数是放在请求体中(Request Body),
- 所以post请求比get请求安全性更高
2、携带参数的大小
- get请求因为是查询字符串拼接,所以携带的参数比较小(基本是2KB)
- post 请求的参数是放在请求体中,所以携带的参数可以很多
3、请求速度的大小
因为get携带参数的长度较小,所以一般情况下get请求的速度比post要快
4、浏览器缓存
- get请求会被浏览器主动缓存,而post不会,除非手动设置
5、浏览器历史记录
get请求的请求参数会完整的保存在浏览器的历史记录中,而post不会 同时get请求只支持url解码,post请求支持多种解码方式
6、浏览器退回
get请求在浏览器中退回是无害的,而post会重新请求
7、常见使用方法
- get请求如上述所说不是那么安全,所以一般常用来获取数据,做数据的查询
- post请求一般用来向浏览器请求数据,向商检的增、改、删数据的 时候一般都是使用post
8、常见的Http状态码
- 1## 表示请求已经接收,正在继续处理
- 2## 表示成功,请求已成功接收,比如200、201 等等
- 3## 表示重定向-表示要完成请求必须要进行更进一步的操作
- 4## 表示客户端错误-表示请求有语法错误或者是请求没法实现
- 5## 服务器错误-服务器未能实现合法的请求