详解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 相关文章推荐
跟随鼠标旋转的文字
Nov 30 Javascript
flexigrid 参数说明
Nov 23 Javascript
在JavaScript中typeof的用途介绍
Apr 11 Javascript
JqueryMobile动态生成listView并实现刷新的两种方法
Mar 05 Javascript
JavaScript创建闭包的两种方式的优劣与区别分析
Jun 22 Javascript
JavaScript 经典实例日常收集整理(常用经典)
Mar 30 Javascript
jQuery的实例及必知重要的jQuery选择器详解
May 20 Javascript
jquery.Callbacks的实现详解
Nov 30 Javascript
如何用js判断dom是否有存在某class的值
Feb 13 Javascript
谈谈JavaScript中super(props)的重要性
Feb 12 Javascript
Vue 之孙组件向爷组件通信的实现
Apr 23 Javascript
vue基于Echarts的拖拽数据可视化功能实现
Dec 04 Vue.js
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 调试工具Debug Tools
2011/04/30 PHP
php5.3中连接sqlserver2000的两种方法(com与ODBC)
2012/12/29 PHP
PHP中Session和Cookie是如何操作的
2015/10/10 PHP
IE FF OPERA都可用的弹出层实现代码
2009/09/29 Javascript
JQuery 网站换肤功能实现代码
2009/11/02 Javascript
CutePsWheel javascript libary 控制输入文本框为可使用滚轮控制的js库
2010/02/07 Javascript
使用Mootools动态添加Css样式表代码,兼容各浏览器
2011/12/12 Javascript
jQuery弹出层始终垂直居中相对于屏幕或当前窗口
2013/04/01 Javascript
node.js中的buffer.Buffer.isEncoding方法使用说明
2014/12/14 Javascript
jQuery使用CSS()方法给指定元素同时设置多个样式
2015/03/26 Javascript
JavaScript实现将UPC转换成ISBN的方法
2015/05/26 Javascript
jQuery幻灯片带缩略图轮播效果代码分享
2015/08/17 Javascript
老生常谈 关于JavaScript的类的继承
2016/06/24 Javascript
纯JavaScript手写图片轮播代码
2016/10/20 Javascript
解决Vue项目中tff报错的问题
2020/10/21 Javascript
Web服务器框架 Tornado简介
2014/07/16 Python
python制作一个桌面便签软件
2015/08/09 Python
Python使用sorted排序的方法小结
2017/07/28 Python
python利用socketserver实现并发套接字功能
2018/01/26 Python
如何实现删除numpy.array中的行或列
2018/05/08 Python
pycharm 解除默认unittest模式的方法
2018/11/30 Python
详解pandas删除缺失数据(pd.dropna()方法)
2019/06/25 Python
关于Python内存分配时的小秘密分享
2019/09/05 Python
python异步编程 使用yield from过程解析
2019/09/25 Python
pandas中read_csv的缺失值处理方式
2019/12/19 Python
Python连接HDFS实现文件上传下载及Pandas转换文本文件到CSV操作
2020/06/06 Python
如何一键升级Python所有包
2020/11/05 Python
纽约现代艺术博物馆商店:MoMA STORE(室内家具和杂货商品)
2016/08/02 全球购物
台湾网购生鲜第一品牌:i3Fresh爱上新鲜
2017/10/26 全球购物
TheFork葡萄牙:欧洲领先的在线餐厅预订平台
2019/05/27 全球购物
美国名牌手表折扣网站:Jomashop
2020/05/22 全球购物
敏捷开发的主要原则都有哪些
2015/04/26 面试题
村干部培训方案
2014/05/02 职场文书
专升本学生毕业自我鉴定
2014/10/04 职场文书
教师先进个人材料
2014/12/17 职场文书
卫生院艾滋病宣传活动总结
2015/05/09 职场文书