前端Get、Post的区别

126 阅读2分钟

Get 和 Post 作为前端常用的两种请求数据的方式,区别有哪些呢?

1、安全性:

  1. get请求的是用查询字符串拼接在url地址中,任何人豆科鱼查看
  2. post 请求的请求参数是放在请求体中(Request Body),
  3. 所以post请求比get请求安全性更高

2、携带参数的大小

  1. get请求因为是查询字符串拼接,所以携带的参数比较小(基本是2KB
  2. post 请求的参数是放在请求体中,所以携带的参数可以很多

3、请求速度的大小

因为get携带参数的长度较小,所以一般情况下get请求的速度比post要快

4、浏览器缓存

  1. get请求会被浏览器主动缓存,而post不会,除非手动设置

5、浏览器历史记录

get请求的请求参数会完整的保存在浏览器的历史记录中,而post不会 同时get请求只支持url解码,post请求支持多种解码方式

6、浏览器退回

get请求在浏览器中退回是无害的,而post会重新请求

7、常见使用方法

  1. get请求如上述所说不是那么安全,所以一般常用来获取数据,做数据的查询
  2. post请求一般用来向浏览器请求数据,向商检的增、改、删数据的 时候一般都是使用post

8、常见的Http状态码

  1. 1## 表示请求已经接收,正在继续处理
  2. 2## 表示成功,请求已成功接收,比如200、201 等等
  3. 3## 表示重定向-表示要完成请求必须要进行更进一步的操作
  4. 4## 表示客户端错误-表示请求有语法错误或者是请求没法实现
  5. 5## 服务器错误-服务器未能实现合法的请求