以promise为基础的http请求, 试用于浏览器和node.js
https://github.com/axios/axios
下载
1 | npm install axios |
使用
使用方式
- axios.request(config)
- axios.get(url[, config])
- axios.delete(url[, config])
- axios.head(url[, config])
- axios.options(url[, config])
- axios.post(url[, data[, config]])
- axios.put(url[, data[, config]])
- axios.patch(url[, data[, config]])
以get为例:
1 | axios.get('/user?ID=12345') |
新建一个axios, 给定特定的设置
1 | var instance = axios.create({ |
之后再采用 instance调接口时, 就默认保留类上述配置
config的具体配置参数
1 | { |
返回参数
1 | { |
拦截器
拦截器会拦截发送的每一个请求,请求发送之前执行request中的函数,请求发送完成之后执行response中的函数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20// 请求拦截器
axios.interceptors.request.use(function (config) {
// 所有请求之前都要执行的操作
return config;
}, function (error) {
// 错误处理
return Promise.reject(error);
});
// 响应拦截器
axios.interceptors.response.use(function (response) {
// 所有请求完成后都要执行的操作
return response;
}, function (error) {
// 错误处理
return Promise.reject(error);
});