VUE(2.6.10) VUE-AXIOS(2.1.5) VUE-CLI (4.1.0) 解决跨域问题
1、package.json
"dependencies": {
"axios": "^0.19.0",
"cropperjs": "^1.5.6",
"highcharts": "^8.0.4",
"http-vue-loader": "^1.4.1",
"iview": "^3.5.4",
"less": "^3.11.1",
"less-loader": "^5.0.0",
"qs": "^6.9.1",
"view-design": "^4.0.2",
"vue": "^2.6.10",
"vue-axios": "^2.1.5",
"vue-image-upload-preview": "^1.0.2",
"vue-router": "^3.1.3",
"vuetify": "^2.1.12"
},
2、main.js
import Vue from 'vue'
import VueRouter from 'vue-router'
import routers from './routers'
import App from './App.vue'
import Vuetify from 'vuetify'
import 'vuetify/dist/vuetify.min.css'
import '@mdi/font/css/materialdesignicons.css'
import 'material-design-icons-iconfont/dist/material-design-icons.css'
import axios from 'axios'
Vue.use(VueRouter)
Vue.use(Vuetify)
Vue.config.productionTip = false
Vue.prototype.$axios = axios
axios.defaults.baseURL = '/apis'
const router = new VueRouter({
mode: 'history',
routes: routers
})
const opts = {}
export default new Vuetify(opts)
new Vue({
router,
vuetify: new Vuetify(),
render: h => h(App),
}).$mount('#app')
3、创建vue.config.js
4、配置代理
module.exports = {
devServer: {
port: 8081,
host: "localhost",
https: false,
open: true,
proxy: {
'/apis': {
target: "http://localhost:80",
changOrigin: true,
pathRewrite: {
'^/apis': ''
}
}
}
}
}
5、重新serve
6、调接口