位置: IT常识 - 正文

vue.config.js 中 devServer.proxy 配置说明,以及配置正确不生效问题

编辑:rootadmin
vue.config.js 中 devServer.proxy 配置说明,以及配置正确不生效问题 文章目录proxy 配置确认、解析原因 一原因二注意详解请求路径必须带有标识!!!pathRewritechangeOriginproxy 配置确认、解析devServer: { https: true, // 开启https模式 // 配置服务器代理 proxy: { '/api': { // 匹配访问路径中含有 '/api' 的路径 target: 'http://localhost:3000/', // 测试地址、目标地址 changeOrigin: true, ws: true, // 是否开启 webSocket 代理 pathRewrite: { // 请求路径重写 '^/api': '', //重写请求路径 }, } } },原因 一

推荐整理分享vue.config.js 中 devServer.proxy 配置说明,以及配置正确不生效问题,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

百度最多的解释

配置写错了 (解决:复制粘贴上面的实例下去改)路径没有匹配上 (解决:看本文的详解部分)原因二

这个原因得注意一下

方式是给我们开发环境用的 ,其次是我们的请求要被开发服务器接收到,且不能匹配到请求,然后我们的请求就会被代理到配置的URL。注释掉,或者改为本地路径,否则代理不会生效

比如说我之前的全局 http.js 配置文件是这样写的

const http = axios.create({ baseURL: 'http://localhost:3000/',})

所以不论是 生产 还是 开发 环境下,我的请求都会发送给我们配置的baseURL,而不会走我们的代理!!!。

所以我们得修改一下配置,使我们的生产路径在生产环境下才生效let baseURL = "/";if (process.env.NODE_ENV === 'production') { baseURL = 'http://localhost:3000/';}const http = axios.create({ baseURL,})

这样在开发环境下,我们的 baseURL = "/", 代理就可以生效了。

注意还有一点就是,即使我们的代理生效了,但是在浏览器请求头中展示的也不是配置的代理地址;所以测的时候得多问问后端请求过去没有,或者自己node搭个简易的服务器看看成没成功;不要一根筋的死盯浏览器的请求头地址。详解请求路径必须带有标识!!!proxy: { '/api': { ... } }

用代理首先你得有一个标识,表明你的这个连接要使用代理;

vue.config.js 中 devServer.proxy 配置说明,以及配置正确不生效问题

不然的话 html css js 这些静态资源都跑去代理。

/api 就是告诉 node ,我接口用 /api 开头的才使用代理,所以接口都写成 /api/xx/xx

出现问题: 请求路径没有 /api ,使用 pathRewrite 解决

pathRewritepathRewrite: { // 请求路径重写 '^/api': '', //重写请求路径 },

pathRewrite的key值 ^/api 就是一个正则表达式。

pathRewrite的value值 为替换后的路径。

这里的话就是将匹配成功的地址当做一个字符串,然后执行 js 的 replace 方法,将执行成功的最终结果作为最后的请求路径。

比如:我们有一个请求 axios.get("/api/aa/bb/cc") ;根据我们这里配置的 proxy, 带有 /api 的请求路径就需要进行代理,且 /api/aa/bb/cc 路径中含有 /api ,所以该请求就需要代理。将路径当做字符串执行, "/api/aa/bb/cc".replace(/^\/api/, "")执行结果: /aa/bb/cc最终的请求路径变成了 http://localhost:3000/aa/bb/cc 不含/api;而 axios.get("/ee/ff/dd") 这个请求就不会进行代理,因为匹配不上我们预设的规则 (请求路径没有 /api)最终的请求路径变成了 http://localhost:3000/ee/ff/dd, 和原路径一致;又比如说我们的配置为pathRewrite: { // 请求路径重写 '^/api': '/rewrite', //重写请求路径 }那么我们的请求 axios.get("/api/aa/bb/cc") ;会执行 "/api/aa/bb/cc".replace(/^\/api/, "/rewrite");最终的请求路径变成了 http:/rewrite/localhost:3000//aa/bb/cc;将 /rewrite 替换了开头的/api。changeOrigin

假设,如果你的前端服务器是 http://localhost:3000,后端是 http://localhost:8082。

那么后端通过 request.getHeader(“Host”) 获取依旧是 http://localhost:3000。

如果你设置了 changeOrigin: true,那么后端通过 request.getHeader(“Host”) 获取才是 http://localhost:8082。代理服务器此时会根据请求的 target 地址修改 Host。

点赞、收藏、投硬币,可爱女友不漏气!

本文链接地址:https://www.jiuchutong.com/zhishi/289726.html 转载请保留说明!

上一篇:雷尼尔山透镜状云的延时视频,华盛顿 (© Delrious/Shutterstock)(雷尼尔山位于美国西北部)

下一篇:将yolov5中的PANet层改为BiFPN(yolov5输出result)

  • 做公众号应该怎么选题(做公众号怎么赚钱?)

    做公众号应该怎么选题(做公众号怎么赚钱?)

  • 小米mix4怎么开性能模式(小米mix4怎么开启120w充电)

    小米mix4怎么开性能模式(小米mix4怎么开启120w充电)

  • vivo x27短信铃声怎么设置(vivo短信提示音)

    vivo x27短信铃声怎么设置(vivo短信提示音)

  • 抢票可以两个人同时帮另一个人抢吗(抢票两个人一起抢还是一个人抢好)

    抢票可以两个人同时帮另一个人抢吗(抢票两个人一起抢还是一个人抢好)

  • 支付宝解除亲情号对方知道吗(支付宝解除亲情卡钱退回来吗)

    支付宝解除亲情号对方知道吗(支付宝解除亲情卡钱退回来吗)

  • 笔记本8g和16g区别大吗(笔记本8g和16g哪个好)

    笔记本8g和16g区别大吗(笔记本8g和16g哪个好)

  • 淘宝拒绝退款申请怎么要回钱(淘宝拒绝退款申请有没有影响)

    淘宝拒绝退款申请怎么要回钱(淘宝拒绝退款申请有没有影响)

  • 苹果手机无法下载企业微信(苹果手机无法下载照片怎么回事)

    苹果手机无法下载企业微信(苹果手机无法下载照片怎么回事)

  • 为什么换了千兆路由器还是慢(为什么换了千兆光猫反而卡顿)

    为什么换了千兆路由器还是慢(为什么换了千兆光猫反而卡顿)

  • 华为小眼睛图标什么意思(华为小眼睛图标怎么去掉)

    华为小眼睛图标什么意思(华为小眼睛图标怎么去掉)

  • 苹果6p和7p的区别(苹果6p和苹果7p参数对比)

    苹果6p和7p的区别(苹果6p和苹果7p参数对比)

  • sata hdd是什么意思(sata hdd规格)

    sata hdd是什么意思(sata hdd规格)

  • 华为隐私空间误删可以恢复吗(华为隐私空间误删可以恢复应用吗)

    华为隐私空间误删可以恢复吗(华为隐私空间误删可以恢复应用吗)

  • 苹果x怎么使用无线充电(苹果X怎么使用语音拨号)

    苹果x怎么使用无线充电(苹果X怎么使用语音拨号)

  • pr导入的视频怎么调分辨率(pr导入的视频怎么裁剪)

    pr导入的视频怎么调分辨率(pr导入的视频怎么裁剪)

  • 共享单车有什么作用(共享单车有什么好处)

    共享单车有什么作用(共享单车有什么好处)

  • 新手如何使用共享单车(新手如何使用共享单车一次多少饯)

    新手如何使用共享单车(新手如何使用共享单车一次多少饯)

  • 微信怎样不显示地区(微信怎样不显示朋友圈这一栏)

    微信怎样不显示地区(微信怎样不显示朋友圈这一栏)

  • QQ音乐怎么退出登录账号(qq音乐怎么退出登录)

    QQ音乐怎么退出登录账号(qq音乐怎么退出登录)

  • 魅族16s防水等级(魅族16s防水级别)

    魅族16s防水等级(魅族16s防水级别)

  • 电脑重新装系统里面的东西还有吗(电脑重新装系统按什么键进入)

    电脑重新装系统里面的东西还有吗(电脑重新装系统按什么键进入)

  • 苹果设备管理在哪(苹果设备管理在哪里找消失了)

    苹果设备管理在哪(苹果设备管理在哪里找消失了)

  • win11电脑怎么重置声音? win11声音恢复默认设置方法(win11电脑怎么重置)

    win11电脑怎么重置声音? win11声音恢复默认设置方法(win11电脑怎么重置)

  • Vue中设置背景图片和透明度(vue设置背景图片透明度)

    Vue中设置背景图片和透明度(vue设置背景图片透明度)

  • c语言中typedef关键字是什么(c语言中的typedef struct)

    c语言中typedef关键字是什么(c语言中的typedef struct)

  • 已抵扣的进项税发票怎么查询明细
  • 耕地占用税的特点与意义
  • 增值税纳税申报表电子版在哪下载
  • 无形资产专利技术计入什么科目
  • 疫情期间固定资产折旧优惠政策
  • 加计抵减进项税转出需要调减吗
  • 利润表第二季度本期金额填4-6月还是1-6月数
  • 房地产土地使用权是无形资产吗
  • 汇总记账凭证会计核算形式
  • 土地增值税征收范围包括
  • 存货转固定资产的时点
  • 合伙企业是否需要缴纳增值税
  • 法人存入现金的会计分录
  • 部分退货退款剩下的钱什么时候给卖家
  • 现金流量表本月数和本年累计数不一致
  • 计提固定资产的方法有几种?
  • 境内企业转让境外股权税收
  • 三证合一后新老税号不符合
  • 结转贸易方式
  • 文化事业费征收
  • 建筑业的一般纳税人
  • 哪些企业可以享受加计扣除
  • 高新技术的研发收入是多少才可以提高
  • 腾讯手游助手卡顿严重
  • 物业公司成本结转方案
  • 独享20m网速快吗
  • 其他综合收益是什么意思
  • 进程core
  • 电脑桌面小工具软件
  • php修改sql语句
  • 计提利息会计分录怎么做
  • Uni-app + Vue3 + TS +Vite 创建项目
  • 其他债权投资减值可以转回吗
  • php获取文件夹大小
  • 确认收入需要哪些资料
  • 工作被取代
  • vue3的unplugin-auto-import自动引入
  • 雷达信号pri
  • pytorch多块gpu
  • vget命令
  • 员工内部罚款能不能抵扣个税
  • ps快速选择工具抠图
  • 购买商品发生的费用计入
  • 会计备案报送期间
  • 设备折旧费怎么使用
  • 成品油涉及范围有哪些
  • 营业执照需要提交什么材料
  • 投资现金流负值表示什么
  • 印花税不减免
  • 无形资产摊销年限按法律规定还是企业估计
  • 财务管理考试时间不够怎么办
  • 通货紧缩的影响简答题
  • 长期股权投资的成本法和权益法区别
  • 税务监制章验证无效
  • 收款单属于什么科目
  • 公司收到股东的投资款以后怎么处理
  • 收到去年所得税退税款会计分录
  • 油费可以进项抵税吗
  • 产成品和半成品需要结转嘛
  • 本单位职工可以在本单位兼职吗
  • 服务器找不到存储盘
  • debian8安装
  • 电脑百度搜索
  • Linux系统用命令进行盘数据往外读不可
  • compaq-rba.exe是哪个方面的进程 作用是什么 compaq-rba进程查询
  • linux 系统查看
  • js opendialog
  • Android Chronometer(定时器)
  • Android一分钟环境搭建,包含Mac、Linux、Windows
  • Unity3D游戏开发标准教程吴亚峰于复兴人民邮电出版社
  • opengl纹理贴图图片位置
  • 详解 linux mysqldump 导出数据库、数据、表结构
  • android 左右滑动 库
  • angularjs常用总结
  • jquery事件的响应
  • 如何理解python语言
  • 税务局各部门职责
  • 地税全国联网了吗
  • 什么叫发票信息对比
  • 德阳契税收费标准2022
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设