传参
data
axios中规定了'PUT', 'POST', 和 'PATCH'传参是通过如下方式
js
{
// 在没有设置 `transformRequest` 时,value必须是以下类型之一:
// - string, plain object, ArrayBuffer, ArrayBufferView, URLSearchParams
// - 浏览器专属:FormData, File, Blob
// - Node 专属: Stream
data: value,
}
平时value的值多是对象,其实也可以是数组等,如
js
{
data: [1, 2, 3]
}
params
get请求通过params
来传参
规定'get'传参是通过如下方式
js
{
params: {
id: '123'
}
}
请求头 content-type 默认是 'application/json; charset=utf-8'
封装axios
封装axios的目的主要是以下几点
- 在每个请求请求头设置 token(登录请求除外)
- 在每个请求之前开始 loading,在请求结束后结束 loading
- axios get 和 post 请求等请求方式的传参形式不同,封装可以统一传参形式
- 如果请求发生错误(有两类错误:1 http状态码status非2xx类错误;2 http状态码status为2xx,但是返回数据code不是success或者00之类标识)
- 请求成功时,结果 response 是一个对象,属性包含 config、data等,而主要使用的是其中的 data,封装可以减少重复操作