Vue和IDEA前后端分离项目,跨域问题的解决

vue前端报错

在这里插入图片描述
后端IDEA使用的是8080端口:
在这里插入图片描述
前端使用的是8081端口:
在这里插入图片描述
两者端口号不一致,出现了跨域问题。

解决这种跨域问题

修改vue项目中的src目录下的vue.config.js文件
在这里插入图片描述
vue.config.js文件中的内容:
在这里插入图片描述
其中下面的代码加上后可以解决上述跨域问题:

// 跨域配置
module.exports = {
  devServer: {                //记住,别写错了devServer//设置本地默认端口  选填
  port: 9876,
  proxy: {                 //设置代理,必须填
  '/api': {              //设置拦截器  拦截器格式   斜杠+拦截器名字,名字可以自己定
  target: 'http://localhost:8080',     //代理的目标地址
  changeOrigin: true,              //是否设置同源,输入是的
  pathRewrite: {                   //路径重写
  '/api': '' //选择忽略拦截器里面的单词
                 }
             }
         }
     }
 }

port: 9876 表示给当前的vue项目一个动态启动地址

target: ‘http://localhost:8080’, //代理的目标地址,你可以修改端口号(与你idea项目的启动端口一直),使得你的vue项目与idea服务器数据跨域得到解决。

后端项目中也需要修改

在Controller的类上面添加注解:@CrossOrigin 在这里插入图片描述
以上所述,照着做下来,就能解决跨域问题。

参考文献
https://zhuanlan.zhihu.com/p/422925154

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值