You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.
import axios from 'axios'
// 创建一个axios对象出来
const request = axios . create ( {
baseURL : 'http://localhost:8181' ,
timeout : 5000
} )
// request 拦截器
// 可以自请求发送前对请求做一些处理
// 比如统一加token, 对请求参数统一加密
request . interceptors . request . use ( config => {
config . headers [ 'Content-Type' ] = 'application/json;charset=utf-8' ;
// const user = localStorage.getItem("user");
// if (user) {
// config.headers['token'] = JSON.parse(user).token;
// }
// config.headers['token'] = user.token; // 设置请求头
return config
} , error => {
return Promise . reject ( error )
} ) ;
// response 拦截器
// 可以在接口响应后统一处理结果
request . interceptors . response . use (
response => {
// response.data即为后端返回的Result
let res = response . data ;
// 兼容服务端返回的字符串数据
if ( typeof res === 'string' ) {
res = res ? JSON . parse ( res ) : res
}
return res ;
} ,
error => {
console . log ( 'err' + error ) // for debug
return Promise . reject ( error )
}
)
export default request