axios统一配置,会很好的提升效率,避免bug,以及定位出bug所在(方便捕获到error信息)
建立一个单独的fetch.js封装axios请求并作为方法暴露出来
import axios from 'axios'
const service = axios.create({
baseURL: process.env.BASE_API,
timeout: 5000,
withCredentials: true
})
axios.defaults.transformRequest = [function (data) {
let newData = ''
for (let k in data) {
newData += encodeURIComponent(k) + '=' + encodeURIComponent(data[k]) + '&'
}
return newData
}]
service.interceptors.request.use(
config => {
return config
},
error => {
return Promise.reject(error)
}
)
service.interceptors.response.use(
response => {
return response
},
error => {
return Promise.reject(error)
}
)
export default service
如下所示,如果需要调用ajax请求
import fetch from '@/utils/fetch'
fetch({
method: 'get',
url: '/users/list'
})
.then(res => {
cosole.log(res)
})