axios 实例
axios.create({
baseURL: 'http://localhost:8080',
timeout: 1000
})
axios 基本配置
基本配置参数
- baseURL: 请求域名,基本地址
- timeout: 请求超时时长(ms)
- url :请求路径
- method : get, post, put, patch, delete
- headers: {} 请求头
- params: 请求参数——参数拼接在url上
- data: 请求参数——参数放在请求体
配置方式
-
全局配置
axios.defaults.timeout = 1000 axos.defaults.baseURL = '' -
实例配置
let instance = axios.create() instance.defaults.timeout -
请求配置
instance.get('/data.json', { timeout: 5000 })
拦截器
在请求或响应被处理前拦截它们
axios.interceptors.request.use(
config => {
return config
},
err => {
// 请求错误, 404...
return Promise.reject(err)
}
)
axios.interceptors.response.use(
res => {
// 请求成功,对响应数据进行处理
return res
}
err => {
// 响应错误: 500
return Promise.reject(err)
}
)
// 取消拦截器
let interceptors = axios.interceptors.request.use()
axios.interceptors.request.reject(interceptors);
取消请求
let source = axios.CancelToken.source()
axios.get('/data.json', {
cancelToken: source.token
}).then(res => {
}).catch(err => {
})
// 取消请求
source.cancel('cancel http');