# Axios
控制着前后端数据交互 一般情况下都需要对Axios进行封装
# 方法
- get(url,config)
- post(url,data,config)
参数 | 作用 |
---|---|
url | url路径 |
data | 请求体(只对post有效) |
config | 其他配置 |
# config
- params url携带的参数
- headers 请求头
# 创建实例
axios.create({config})
const service = axios.create({
baseURL: "xxx",
timeout: 1000 * 60 * 1
})
# 封装API
创建一个JS对象封装
const api = {
getImage(param){
return service.get("url",{
params: {
param1,
param2
}
})
}
postImage(data){
return service.post("url",data,{
params: {
param1
},
headers: {
key: value
}
})
}
}
# 拦截器
axios实例.interceptors
# request
axios实例.interceptors.request(success,error)
service.interceptors.request.use(
config => {
return config;
},
err => {
return Promise.reject(err);
}
)
# response
axios实例.interceptors.response(success.error)
service.interceptors.response.use(
response => {
return response.data;
},
err => {
return Promise.reject(err);
}
)