详解webpack的proxyTable无效的解决方案


Posted in Javascript onJune 15, 2018

最近遇到这个需要单页访问跨域后台的问题。

可以按照如下设置:

proxyTable: {
'/list': {
target: 'http://api.xxxxxxxx.com',
pathRewrite: {
'^/list': '/list'
}
}
}

这样我们在写url的时候,只用写成/list/1就可以代表api.xxxxxxxx.com/list/1.

那么又是如何解决跨域问题的呢?其实在上面的'list'的参数里有一个changeOrigin参数,接收一个布尔值,如果设置为true,那么本地会虚拟一个服务端接收你的请求并代你发送该请求,这样就不会有跨域问题了,当然这只适用于开发环境。增加的代码如下所示:

proxyTable: {
'/list': {
target: 'http://api.xxxxxxxx.com',
changeOrigin: true,
pathRewrite: {
'^/list': '/list'
}
}
}

遇到了网上很多人说的,proxyTable无论如何修改,都没效果的现象。

经过几轮测试,总结出一下几种解决方案:

1.(非常重要)确保proxyTable配置的地址能访问,因为如果不能访问,在浏览器F12调试的时候看到的依然会是提示404。
并且注意,在F12看到的js提示错误的域名,是js写的那个域名,并不是代理后的域名。

另外配置正常的话,在idea的控制台,会有错误提示显示,例如:

  Your application is running here:http://localhost:8082                                                                                                                                                                                             [HPM] Error occurred while trying to proxy request /api/user/ts from localhost:8082 to http://localhost:1920/ (ECONNREFUSED)

2.(奇葩解决)个人感觉这个http代理的插件有缓存,proxyTable的修改会无效,这时候可以尝试修改启动项目的端口,就在proxyTable属性配置的下面几行有个port: 8080,改成其他,例如8081,就会有效,然后再改回来就好。

3.这个比较多人说了,就是要手动再执行一次npm run dev

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
PHPMyAdmin导入时提示文件大小超出PHP限制的解决方法
Mar 30 Javascript
javascript中的五种基本数据类型
Aug 26 Javascript
jQuery 翻页组件yunm.pager.js实现div局部刷新的思路
Aug 11 Javascript
总结Javascript中数组各种去重的方法
Oct 04 Javascript
AngularJS+Bootstrap实现多文件上传与管理
Nov 08 Javascript
Javascript中关于Array.filter()的妙用详解
Dec 04 Javascript
Vuex之理解state的用法实例
Apr 19 Javascript
js判断输入框不能为空格或null值的实现方法
Mar 02 Javascript
JavaScript实现小球沿正弦曲线运动
Sep 07 Javascript
JavaScript深入V8引擎以及编写优化代码的5个技巧
Jun 24 Javascript
使用p5.js临摹动态图片
Nov 04 Javascript
TypeScript 引用资源文件后提示找不到的异常处理技巧
Jul 15 Javascript
vue中axios的封装问题(简易版拦截,get,post)
Jun 15 #Javascript
vue和webpack打包项目相对路径修改的方法
Jun 15 #Javascript
webpack公共组件引用路径简化小技巧
Jun 15 #Javascript
微信小程序自定义tab实现多层tab嵌套功能
Jun 15 #Javascript
微信小程序实现自定义modal弹窗封装的方法
Jun 15 #Javascript
详解vue组件开发脚手架
Jun 15 #Javascript
在 vue-cli v3.0 中使用 SCSS/SASS的方法
Jun 14 #Javascript
You might like
如何对PHP程序中的常见漏洞进行攻击(下)
2006/10/09 PHP
php学习笔记 面向对象中[接口]与[多态性]的应用
2011/06/16 PHP
PHP setTime 设置当前时间的代码
2012/08/27 PHP
PHP管理依赖(dependency)关系工具 Composer的自动加载(autoload)
2014/08/18 PHP
PHP中数据库单例模式的实现代码分享
2014/08/21 PHP
Yii2中DropDownList简单用法示例
2016/07/18 PHP
javascript 一个函数对同一元素的多个事件响应
2009/07/25 Javascript
基于JQuery的一句代码实现表格的简单筛选
2010/07/26 Javascript
js 判断checkbox是否选中的操作方法
2012/11/09 Javascript
Nodejs全栈框架StrongLoop推荐
2014/11/09 NodeJs
Eclipse引入jquery报错如何解决
2015/12/01 Javascript
vue开发环境配置跨域的方法步骤
2019/01/16 Javascript
ES7之Async/await的使用详解
2019/03/28 Javascript
Vue实现剪贴板复制功能
2019/12/31 Javascript
Node.js API详解之 assert模块用法实例分析
2020/05/26 Javascript
Vue如何基于vue-i18n实现多国语言兼容
2020/07/17 Javascript
Vue自定义全局弹窗组件操作
2020/08/11 Javascript
关于Python中异常(Exception)的汇总
2017/01/18 Python
详解python中的线程
2018/02/10 Python
python实现机器学习之多元线性回归
2018/09/06 Python
Python常用特殊方法实例总结
2019/03/22 Python
Pytorch中的VGG实现修改最后一层FC
2020/01/15 Python
Python爬虫headers处理及网络超时问题解决方案
2020/06/19 Python
Python dict的常用方法示例代码
2020/06/23 Python
Python创建自己的加密货币的示例
2021/03/01 Python
html5 Canvas画图教程(8)—canvas里画曲线之bezierCurveTo方法
2013/01/09 HTML / CSS
Html5实现iPhone开机界面示例代码
2013/06/30 HTML / CSS
深入了解canvas在移动端绘制模糊的问题解决
2019/04/30 HTML / CSS
DHC中国官方购物网站:日本通信销售No.1化妆品
2016/08/20 全球购物
旧时光糖果:Old Time Candy
2018/02/05 全球购物
德国电子产品购物网站:TechInTheBasket德国
2018/12/07 全球购物
大学生标准推荐信范文
2013/11/25 职场文书
职务说明书范文
2014/05/07 职场文书
医院领导班子四风问题对照检查材料
2014/10/26 职场文书
地球上的星星观后感
2015/06/02 职场文书
创业计划书之青年旅馆
2019/09/23 职场文书