vue.config.js解决跨域问题

时间:2019-11-27
本文章向大家介绍vue.config.js解决跨域问题,主要包括vue.config.js解决跨域问题使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

需求我们要访问后台的数据,但因为后台的端口号不一致所以需要实现跨域

未跨域

// 请求接口 后台的接口为5001 我们本地的接口为8080,所以我们需要去到vue.config.js配置跨域 http://localhost:5001/api/
  this.$axios.post('http://localhost:5001/api/users/register',this.user)
  .then(res =>{
    // 注册成功
    alert('注册成功!')
    this.$router.push('/login')
    console.log(res)
  })//在http全局配置了catch所以这边是不用配置的
}

在当前项目的根路径下新建一个文件,文件名是固定的 vue.config.js —>proxy

  module.exports = {
    devServer: {
      open: true,
      host: 'localhost',
      port: 8080,
      https: false,
      //以上的ip和端口是我们本机的;下面为需要跨域的
      proxy: {  //配置跨域
        '/api': {
          target: 'http://localhost:5001/api/',  //这里后台的地址模拟的;应该填写你们真实的后台接口
          ws: true,
          changOrigin: true,  //允许跨域
          pathRewrite: {
            '^/api': ''  //请求的时候使用这个api就可以
          }
      }
    }
  }
}

跨域页面使用:

    // 请求接口 后台的接口为5001 我们本地的接口为8080,所以我们需要去到vue.config.js配置跨域 http://localhost:5001/api/
    this.$axios.post('/api/users/register',this.user)
    .then(res =>{
      // 注册成功
      alert('注册成功!')
      this.$router.push('/login')
      console.log(res)
    })//在http全局配置了catch所以这边是不用配置的
  }

跨域成功:

 hint:只要是修改了配置就一定要重启项目
————————————————
原文链接:https://blog.csdn.net/qq_40190624/article/details/85257610

原文地址:https://www.cnblogs.com/whoamimy/p/11945474.html