Vue项目中遇到No ‘Access-Control-Allow-Origin‘ header is present on the requested resource. 跨域问题的解决方法

在Vue.js项目中遇到'Access-Control-Allow-Origin'错误时,可以通过配置反向代理和修改接口来解决跨域问题。具体方法是在vue.config.js文件中设置反向代理,并将生产环境URL替换为'/api',利用反向代理的pathRewrite避免路径重复。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这是我在公司实习中遇到的问题,提供一下解决办法,可能解决的不是太好。公司有自己的框架..我还看不懂

 解决办法:

        1.配置反向代理 ----->反向代理传送门

                在vue.config.js文件中添加反向代理

 devServer: {
    port: port,//自己的接口
    open: true,
    overlay: {
      warnings: false,
      errors: true
    },
    proxy:{
      "/api/*":{ 
          target:"http://douyindf.xingyebao.com",//对应后台接口
          changeOrigin:true,//是否跨域
          ws:true,
          pathRewrite:{//重定向
              '^/api':""
          }
      }
  }

        2.改接口

        将下方的生产环境的网址换成"/api",因为在反向代理中的重定向中的pathRewrite中的'^/api':"" ,所以跳转的时候加上/api 的话不会重复(?!我也不太懂,相对路径的问题吧?有大佬可以评论区说一下)

//1. 创建新的axios实例,
const service = axios.create({
  // 公共接口
  baseURL: "/api",                              //开发环境
  // baseURL: "http://douyindf.xingyebao.com",  //生产环境
});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不会有人真的学前端吧

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值