vue设置代理不起作用问题及解决

 更新时间:2022年05月12日 15:56:26   作者:姜意%  
这篇文章主要介绍了vue设置代理不起作用问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

vue设置代理不起作用

使用vue写前端界面时,需调用后端接口展现查询的数据,于是设置代理实现跨域,在config/index.js中添加代理,代码如下:

proxyTable:{
      // 匹配 /dev-api 开头的请求, 比如:A网站:https://localhost:8888 中的index.html 页面发送AJax请求:/dev-api/data.json
      'dev-api': {
        target:'http://localhost:3001',
        // 开启代理:在本地会创建一个虚拟服务端,然后发送请求的数据,
        // 并同时接收请求的数据,这样服务端和服务端进行数据的交互就不会有跨域问题
        changOrigin: true, //开启代理
        pathRewrite: {
            "^/dev-api": ''
        }
      }
    },

运行后发现报错404

在这里插入图片描述

测试后端接口无问题,着重看代理部分代码,百度后发现 “dev-api"前面应加”/",

否则会出现上述错误。

完整代码如下:

proxyTable:{
      // 匹配 /dev-api 开头的请求, 比如:A网站:https://localhost:8888 中的index.html 页面发送AJax请求:/dev-api/data.json
      '/dev-api': {
        target:'http://localhost:3001',
        // 开启代理:在本地会创建一个虚拟服务端,然后发送请求的数据,
        // 并同时接收请求的数据,这样服务端和服务端进行数据的交互就不会有跨域问题
        changOrigin: true, //开启代理
        pathRewrite: {
            "^/dev-api": ''
        }
      }
    },

除此之外,修改代理后应重启一下,否则修改内容不生效。

vue配置代理方式

正向代理配置

环境配置文件 .env.development

ENV = 'development'
VUE_APP_BASE_API="/dev-api"

vue配置文件 vue.config.js

devServer: {
    proxy:'http://localhost:8080'//所有的接口请求都会被代理到这个路径上
},
devServer: {
    proxy:{
        '/dev-api':{//只要是这个路径下的请求都会被代理到target中
            target:'http://localhost:8888',
            pathRewrite:{'^/dev-api':''}//路径重写:/dev-api路径将不会出现,如果改成'^/dev-api':'test',则重写的路径/dev-api会变成test
        }
    }
},

注意点:使用正向代理时,不要手动的写全路径,不要手动的写全路径,不要手动的写全路径,(重要的事情说三遍)写了全路径则代理失效

全路径:http://localhost:8080 即:协议、域名、端口

只要写一个代理路径即可:VUE_APP_BASE_API =/dev-api

环境变量配置文件

你可以在你的项目根目录中放置下列文件来指定环境变量:

.env                # 在所有的环境中被载入
.env.local          # 在所有的环境中被载入,但会被 git 忽略
.env.[mode]         # 只在指定的模式中被载入
.env.[mode].local   # 只在指定的模式中被载入,但会被 git 忽略
# mode 代表环境变量:development、production和test。不同的文件名在不同的环境下自动生效

请注意,只有 NODE_ENV,BASE_URL 和以 VUE_APP_ 开头的变量将通过 webpack.DefinePlugin 静态地嵌入到客户端侧的代码中。

这是为了避免意外公开机器上可能具有相同名称的私钥。

目录

.env.production//生产环境配置
.env.develoption//开发环境配置

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 在vue中对数组值变化的监听与重新响应渲染操作

    在vue中对数组值变化的监听与重新响应渲染操作

    这篇文章主要介绍了在vue中对数组值变化的监听与重新响应渲染操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • vue-cli4使用全局less文件中的变量配置操作

    vue-cli4使用全局less文件中的变量配置操作

    这篇文章主要介绍了vue-cli4使用全局less文件中的变量配置操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10
  • vue实现搜索过滤效果

    vue实现搜索过滤效果

    这篇文章主要为大家详细介绍了vue实现搜索过滤效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-05-05
  • vue-devtools 打开源码位置实现过程

    vue-devtools 打开源码位置实现过程

    这篇文章主要为大家介绍了vue-devtools 打开源码位置实现过程详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-09-09
  • vue.js删除列表中的一行

    vue.js删除列表中的一行

    这篇文章给大家分享了vue.js删除列表中的一行的实例操作以及代码分享,有兴趣的朋友参考下。
    2018-06-06
  • vue生命周期beforeDestroy和destroyed调用方式

    vue生命周期beforeDestroy和destroyed调用方式

    这篇文章主要介绍了vue生命周期beforeDestroy和destroyed调用方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06
  • 基于vue-seamless-scroll实现无缝滚动效果

    基于vue-seamless-scroll实现无缝滚动效果

    这篇文章主要为大家详细介绍了基于vue-seamless-scroll实现无缝滚动效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • vue如何动态实时的显示时间浅析

    vue如何动态实时的显示时间浅析

    这篇文章主要给大家介绍了关于vue如何动态实时的显示时间,以及vue时间戳 获取本地时间实时更新的相关资料,需要的朋友们下面随着小编来一起学习学习吧
    2021-05-05
  • Vite图片资源打包优化的实现

    Vite图片资源打包优化的实现

    本文主要介绍了Vite图片资源打包优化的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • 如何测量vue应用运行时的性能

    如何测量vue应用运行时的性能

    这篇文章主要介绍了如何测量vue应用运行时的性能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,,需要的朋友可以参考下
    2019-06-06

最新评论