跨域问题
vue/cli 4.3.1跨域问题
vue新手的必经之路,跨域请求,搞了好九九
看了很多博客和文章。。
- 根目录下
新建 .env.development 文件
# just a flag
ENV = 'development'
# base api
VUE_CLI_BABEL_TRANSPILE_MODULES = true
- 根目录下
新建 vue.config.js
// vue.config.js
module.exports = {
publicPath: process.env.NODE_ENV === 'production' ? '/site/vue-demo/' : '/',
devServer: {
overlay: { // 同时显示警告和错误
warnings: true,
errors: true,
},
host: 'localhost',
port: 80, // 本地端口号
https: false,
open: false, // 配置自动启动浏览器
hotOnly: true, // 是否热更新
proxy: {
'/apps': {
target: 'http://192.168.10.215',// 配置目标跨域服务器
changeOrigin: true,
secure: false,
pathRewrite: {
'^/apps': '',
},
},
},
},
};
- 请求前安装
导入 qs 和 axios
import qs from 'qs';
import axios from 'axios';
- 请求
axios.post('/apps/index/Auth/login', qs.stringify(this.formdata))
.then((res) => {
console.log(res);
})
.catch((error) => {
console.log(error);
});
使用qs 是因为业务之前 是使用了jQuery的,ajax提交方式
主要是看博客大神们的文章,自己试,感谢博客各路大神,拜谢!