详解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 相关文章推荐
JS求平均值的小例子
Nov 29 Javascript
jquery查找tr td 示例模拟
May 08 Javascript
js实现tab切换效果实例
Sep 16 Javascript
5个最顶级jQuery图表类库插件【jquery插件库】
May 05 Javascript
Bootstrap教程JS插件滚动监听学习笔记分享
May 18 Javascript
基于JS实现回到页面顶部的五种写法(从实现到增强)
Sep 03 Javascript
js实现弹窗暗层效果
Jan 16 Javascript
使用jQuery实现动态添加小广告
Jul 11 jQuery
读懂CommonJS的模块加载
Apr 19 Javascript
vue组件内部引入外部js文件的方法
Jan 18 Javascript
JavaScript正则表达式验证登录实例
Mar 18 Javascript
Javascript实现鼠标移入方向感知
Jun 24 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 数据库树的遍历方法
2009/02/06 PHP
如何批量替换相对地址为绝对地址(利用bat批处理实现)
2013/05/27 PHP
php 替换文章中的图片路径,下载图片到本地服务器的方法
2018/02/06 PHP
基于jquery的一个简单的脚本验证插件
2010/04/05 Javascript
jQuery 工具函数学习资料
2010/04/29 Javascript
jquery 单击li防止重复加载的实现代码
2010/12/24 Javascript
jquery的ajax请求全面了解
2013/03/20 Javascript
使用Java实现简单的server/client回显功能的方法介绍
2013/05/03 Javascript
js 判断js函数、变量是否存在的简单示例代码
2014/03/04 Javascript
直接拿来用的15个jQuery代码片段
2015/09/23 Javascript
JavaScript的instanceof运算符学习教程
2016/06/08 Javascript
Bootstrap布局组件教程之Bootstrap下拉菜单
2016/06/12 Javascript
Laravel中常见的错误与解决方法小结
2016/08/30 Javascript
jQuery模拟Marquee实现无缝滚动效果完整实例
2016/09/29 Javascript
axios学习教程全攻略
2017/03/26 Javascript
html5+canvas实现支持触屏的签名插件教程
2017/05/08 Javascript
利用javascript如何随机生成一定位数的密码
2017/09/22 Javascript
微信小程序支付之c#后台实现方法
2017/10/19 Javascript
使用Angular CLI进行单元测试和E2E测试的方法
2018/03/24 Javascript
打通前后端构建一个Vue+Express的开发环境
2018/07/17 Javascript
Vue中使用clipboard实现复制功能
2018/09/05 Javascript
js拖动滑块和点击水波纹效果实例代码
2018/10/16 Javascript
JS中创建自定义类型的常用模式总结【工厂模式,构造函数模式,原型模式,动态原型模式等】
2019/01/19 Javascript
微信小程序吸底区域适配iPhoneX的实现
2020/04/09 Javascript
js实现盒子拖拽动画效果
2020/08/09 Javascript
Python爬虫图片懒加载技术 selenium和PhantomJS解析
2019/09/18 Python
Python 利用邮件系统完成远程控制电脑的实现(关机、重启等)
2019/11/19 Python
pytorch dataloader 取batch_size时候出现bug的解决方式
2020/02/20 Python
Python列表如何更新值
2020/05/27 Python
深入了解NumPy 高级索引
2020/07/24 Python
使用Python获取爱奇艺电视剧弹幕数据的示例代码
2021/01/12 Python
video实现有声音自动播放的实现方法
2020/05/20 HTML / CSS
Myprotein西班牙官网:欧洲第一大运动营养品牌
2020/02/24 全球购物
物业管理求职自荐信
2013/09/25 职场文书
QQ空间主人寄语大全
2014/04/12 职场文书
2015年元旦促销方案书
2014/12/09 职场文书