77 lines
1.7 KiB
JavaScript
77 lines
1.7 KiB
JavaScript
import axios from 'axios' //引用axios
|
|
import { message } from 'ant-design-vue';
|
|
import Vue from 'vue'
|
|
import checkTypes from "../utils/checkTypes";
|
|
axios.defaults.withcredentials =true
|
|
// create an axios instance
|
|
const service = axios.create({
|
|
// baseURL: process.env.NODE_ENV === 'development' ? '' : 'http://101.43.201.20:5000', // 所有异步请求都加上/api,nginx转发到后端Springboot
|
|
baseURL: '', // 所有异步请求都加上/api,nginx转发到后端Springboot
|
|
timeout: 5000 // request timeout
|
|
})
|
|
|
|
// request interceptor
|
|
service.interceptors.request.use(
|
|
config => {
|
|
config.headers['Access-Control-Allow-Origin'] = '*'
|
|
return config
|
|
},
|
|
error => {
|
|
return Promise.reject(error)
|
|
}
|
|
)
|
|
|
|
// response interceptor
|
|
service.interceptors.response.use(
|
|
response => {
|
|
const res = response.data //res is my own data
|
|
if (!checkTypes.isObject(res)) {
|
|
return { data: res }
|
|
}
|
|
if (`${res.code}` === '0') {
|
|
return res
|
|
} else {
|
|
message.error(res.msg || 'Error')
|
|
return Promise.reject(new Error(res.msg || 'Error'))
|
|
}
|
|
},
|
|
error => {
|
|
message.error(error.message)
|
|
return Promise.reject(error)
|
|
}
|
|
)
|
|
|
|
Vue.prototype.$http = service
|
|
Vue.prototype.$post = (url, data, props = {}) => {
|
|
return service({
|
|
url,
|
|
method: "post",
|
|
data,
|
|
...props
|
|
})
|
|
}
|
|
Vue.prototype.$put = (url, data, props = {}) => {
|
|
return service({
|
|
url,
|
|
method: "put",
|
|
data,
|
|
...props
|
|
})
|
|
}
|
|
Vue.prototype.$delete = (url, data, props = {}) => {
|
|
return service({
|
|
url,
|
|
method: "delete",
|
|
data,
|
|
...props
|
|
})
|
|
}
|
|
Vue.prototype.$get = (url, data, props = {}) => {
|
|
return service({
|
|
url,
|
|
method: "get",
|
|
params: data,
|
|
...props
|
|
})
|
|
}
|