axios Proxy跨域
axios 設置 Proxy 跨域
在 package.json 同級目錄下新建 vue.config.js
module.exports = {
devServer: {
proxy: {
"/devapi": {
target: "http://127.0.0.1:3000",
changeOrigin: true,
pathRewrite: {
"^/devapi": ""
}
}
},
},
}
封裝 axios.js
import axios from 'axios'
const BASEURL = process.env.NOOE_ENV === 'production' ? '' : '/devapi'
const service = axios.create({
baseURL: BASEURL,
timeout: 5500
})
service.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded'
service.interceptors.request.use(function (config) {
if (config.method === 'post') {
config.data = qs.stringify(config.data)
}
return config;
}, function (error) {
return Promise.reject(error);
});
service.interceptors.response.use(function (response) {
return response;
}, function (error) {
return Promise.reject(error);
});
export default service;
把 封裝的axios 導入到main.js
import service from './utils/axios.js'
Vue.prototype.$http=service
之後可以直接調用發起跨域請求
this.$http.request({
method: 'get',
url: '/home/multidata',
data: {}
})
}