webpack proxy 使用(代理的使用)


Posted in Javascript onJanuary 10, 2020

为什么要写篇文章

这两天的开发中遇到一些需要代理才能解决的问题, 在这里记录一下, 方便以后的查阅.

为什么要用代理

跨域

在开发过程中, 我们的开发环境一般都是http:// localhost, 但是如果需要请求的数据不在本地, 那么我们就需要面对一个跨域请求的问题. 众所周知, 因为浏览器的安全协议, 我们是无法直接进行跨域请求的. 代理就是为了解决这个问题, 当然了你也可以使用jsonp 和 nginx 反向代理.

如何进行代理

webpack 配置

在这里我默认为开发环境的配置

  1. 找到 webpack.config.js 文件
  2. 在 devServer 对象下面加入以下代码
proxy: {
  '/index':{ // 这个是你要替换的位置
  
  /** 比如你要讲http://localhost:8080/index/xxx 替换成 http://10.20.30.120:8080/sth/xxx
  * 那么就需要将 index 前面的值替换掉, 或者说是替换掉根地址, 
  *你可能发现了index也是需要替换的, 没错, 我会在后续操作中处理.
  */
  
  target: 'http://10.20.30.120:8080'//这个是被替换的目标地址
  
  changeOrigin: true // 默认是false,如果需要代理需要改成true
  
  pathRewrite:{
    '^/index' : '/' //在这里 http://localhost:8080/index/xxx 已经被替换成 http://10.20.30.120:8080/
  }}
}

// 然后在你发起请求的js文件中的地址需要忽略http://10.20.30.120:8080/

//比如 demo.js
axios.post({
  url:'http://10.20.30.120:8080/sth/xxx'// 需要替换成下面的地址
  url:'/sth/xxx'
}
)

原理

实际上代理是使用了是利用http-proxy-middleware这个插件完成的, 有兴趣的话可以去搜一下,在这里我就不多做解释了.

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

Javascript 相关文章推荐
由JavaScript技术实现的web小游戏(不含网游)
Jun 12 Javascript
jQuery选择器的工作原理和优化分析
Jul 25 Javascript
jQuery实现div浮动层跟随页面滚动效果
Feb 11 Javascript
node.js中Socket.IO的进阶使用技巧
Nov 04 Javascript
jQuery修改class属性和CSS样式整理
Jan 30 Javascript
js简单实现标签云效果实例
Aug 06 Javascript
JavaScript函数参数的传递方式详解
Mar 06 Javascript
seaJs使用心得之exports与module.exports的区别实例分析
Oct 13 Javascript
详解Vue + Vuex 如何使用 vm.$nextTick
Nov 20 Javascript
vue 全选与反选的实现方法(无Bug 新手看过来)
Feb 09 Javascript
阿望教你用vue写扫雷小游戏
Jan 20 Javascript
简单了解Vue + ElementUI后台管理模板
Apr 07 Javascript
基于vue-draggable 实现三级拖动排序效果
Jan 10 #Javascript
bootstrap实现嵌套模态框的实例代码
Jan 10 #Javascript
jQuery操作动画完整实例分析
Jan 10 #jQuery
基于JavaScript判断两个对象内容是否相等
Jan 10 #Javascript
jQuery操作事件完整实例分析
Jan 10 #jQuery
jQuery操作元素追加内容示例
Jan 10 #jQuery
基于JS判断对象是否是数组
Jan 10 #Javascript
You might like
php数据库连接
2006/10/09 PHP
php array_slice函数的使用以及参数详解
2008/08/30 PHP
PHP MVC框架路由学习笔记
2016/03/02 PHP
PHP封装的完整分页类示例
2018/08/21 PHP
根据分辨率不同,调用不同的css文件
2006/08/25 Javascript
nullJavascript中创建对象的五种方法实例
2013/05/07 Javascript
JavaScript中的ubound函数使用实例
2014/11/04 Javascript
jQuery Ajax()方法使用指南
2014/11/19 Javascript
jQuery oLoader实现的加载图片和页面效果
2015/03/14 Javascript
js中 javascript:void(0) 用法详解
2015/08/11 Javascript
jquery实现的判断倒计时是否结束代码
2016/02/05 Javascript
浅谈String.valueOf()方法的使用
2016/06/06 Javascript
jQuery实现公告新闻自动滚屏效果实例代码
2016/07/14 Javascript
AngularJS使用带属性值的ng-app指令实现自定义模块自动加载的方法
2017/01/04 Javascript
react性能优化达到最大化的方法 immutable.js使用的必要性
2017/03/09 Javascript
jQuery实现鼠标响应式淘宝动画效果示例
2018/02/13 jQuery
详解Node.js中path模块的resolve()和join()方法的区别
2018/10/29 Javascript
vue 获取视频时长的实例代码
2019/08/20 Javascript
微信小程序后端(java)开发流程的详细步骤
2019/11/13 Javascript
jQuery 选择器用法基础入门示例
2020/01/04 jQuery
跟老齐学Python之类的细节
2014/10/13 Python
使用Python实现BT种子和磁力链接的相互转换
2015/11/09 Python
Python脚本实现12306火车票查询系统
2016/09/30 Python
Python实现简单查找最长子串功能示例
2019/02/26 Python
PyQtGraph在pyqt中的应用及安装过程
2019/08/04 Python
Python脚本操作Excel实现批量替换功能
2019/11/20 Python
浅谈Python 函数式编程
2020/06/20 Python
Python实现播放和录制声音的功能
2020/08/12 Python
澳大利亚制造的羊皮靴:Original UGG Boots
2017/11/13 全球购物
Armor Lux法国官方网站:水手服装、成衣和内衣
2020/05/26 全球购物
PHP面试题集
2016/12/18 面试题
文秘专业毕业生就业推荐信
2013/11/08 职场文书
蓝颜请假条
2014/04/11 职场文书
市场调查策划方案
2014/06/10 职场文书
高三霸气励志标语
2014/06/24 职场文书
安全员岗位职责
2015/02/10 职场文书