vue

vue cli3.x开发环境配置跨域

2020-01-19  本文已影响0人  一包

在正式环境中,由于后台设置cros或者我们使用nginx反向代理,所以不需要考虑跨域问题,而在前端本地开发中会遇到跨域问题,所以我们可以通过设置proxy来进行跨域。

为什么需要跨域,这是因为浏览器有同源策略。

同源策略

配置proxy

原理:

  1. 服务器和服务器直接没有同源策略,所以浏览器可以发给自己的服务端然后,由自己的服务端再转发给要跨域的服务端,做一层代理

而vue已经帮我们配置好了(使用到了http-proxy-middleware中间件),我们只需要设置一下proxy(vue3.x以前叫proxy table)

module.exports = {
  devServer: {
    // 配置跨域代理
    proxy: {
      "/api": {//将http://baidui.com"映射为/api
        target: "http://baidui.com",//需要代理的baserurl,目标地址
        changeOrigin: true, //本地会虚拟一个服务端接收你的请求并代你发送该请求
        pathRewrite: {
          "^/api": "" //重写路径,比如将api/aa/bb重写为aa/bb
        },
        logLevel: "debug"//可以在终端打印日志
      }
    }
  }
};

比如我们之前的接口地址是
http://baidui.com/aa/bb
现在我们只需要写成api/aa/bb即可

注意:本配置只在本地开发有效

上一篇 下一篇

猜你喜欢

热点阅读