Axios 请求拦截器和响应拦截器配置
简易模式
import axios from 'axios'
const axiosInstance = axios.create({
baseURL: baseUrl,
timeout: 1000 * 60 * 1,
responseType: 'json',
insecureHTTPParser: true,
headers: {
'Content-Type': 'application/json;charset=utf-8',
},
})
// 请求拦截器
// 在请求发送前进行必要操作处理,例如添加统一cookie、请求体加验证、设置请求头等,相当于是对每个接口里相同操作的一个封装;
axiosInstance.interceptors.request.use(
(config) => {
const newConfig = config
if (config.data instanceof FormData) {
Object.assign(newConfig.headers, { 'Content-Type': 'application/json' })
}
return newConfig
}
)
// 响应拦截器
// 在请求得到响应之后,对响应体的一些处理,通常是数据统一处理等,也常来判断登录失效等
axiosInstance.interceptors.response.use(
(response) => {
return response.data
},
(error) => {
return Promise.reject(error)
}
)

浙公网安备 33010602011771号