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 相关文章推荐
由document.body和document.documentElement想到的
Apr 13 Javascript
js 链式延迟执行DOME
Jan 04 Javascript
jquery使用jquery.zclip插件复制对象的实例教程
Dec 04 Javascript
JS实现两个大数(整数)相乘
Apr 28 Javascript
利用js实现禁止复制文本信息
Jun 03 Javascript
使用Node.js配合Nginx实现高负载网络
Jun 28 Javascript
理解Javascript图片预加载
Feb 23 Javascript
详解Jquery Easyui的验证扩展
Jan 09 Javascript
vue实现表格数据的增删改查
Jul 10 Javascript
微信小程序实现指定显示行数多余文字去掉用省略号代替
Jul 25 Javascript
js Math数学简单使用操作示例
Mar 13 Javascript
uni-app微信小程序登录授权的实现
May 22 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
收音机鉴频器对声音的影响和频偏分析
2021/03/02 无线电
计算php页面运行时间的函数介绍
2013/07/01 PHP
PHP中使用BigMap实例
2015/03/30 PHP
完美解决在ThinkPHP控制器中命名空间的问题
2017/05/05 PHP
PHP实现的折半查询算法示例
2017/10/09 PHP
10款新鲜出炉的 jQuery 插件(Ajax 插件,有幻灯片、图片画廊、菜单等)
2011/06/08 Javascript
jQuery事件 delegate()使用方法介绍
2012/10/30 Javascript
如何实现修改密码时密码框显示保存到cookie的密码
2013/12/10 Javascript
Jquery解析Json格式数据过程代码
2014/10/17 Javascript
js跨域问题浅析及解决方法优缺点对比
2014/11/08 Javascript
5个数组Array方法: indexOf、filter、forEach、map、reduce使用实例
2015/01/29 Javascript
JavaScript中return false的用法
2015/03/12 Javascript
巧方法 JavaScript获取超链接的绝对URL地址
2016/06/14 Javascript
用v-html解决Vue.js渲染中html标签不被解析的问题
2016/12/14 Javascript
JS编写函数实现对身份证号码最后一位的验证功能
2016/12/29 Javascript
360提示[高危]使用存在漏洞的JQuery版本的解决方法
2017/10/27 jQuery
npm全局模块卸载及默认安装目录修改方法
2018/05/15 Javascript
js中split()方法得到的数组长度问题
2018/07/19 Javascript
微信小程序版本自动更新的方法
2019/06/14 Javascript
python里将list中元素依次向前移动一位
2014/09/12 Python
Python实现公历(阳历)转农历(阴历)的方法示例
2017/08/22 Python
NumPy.npy与pandas DataFrame的实例讲解
2018/07/09 Python
python3判断url链接是否为404的方法
2018/08/10 Python
pyqt5实现绘制ui,列表窗口,滚动窗口显示图片的方法
2019/06/20 Python
Keras - GPU ID 和显存占用设定步骤
2020/06/22 Python
解决python和pycharm安装gmpy2 出现ERROR的问题
2020/08/28 Python
解决Ubuntu18中的pycharm不能调用tensorflow-gpu的问题
2020/09/17 Python
详解利用canvas实现环形进度条的方法
2019/06/12 HTML / CSS
亚洲领先的旅游体验市场:Voyagin
2019/11/23 全球购物
质检员的岗位职责
2013/11/15 职场文书
《青蛙看海》教学反思
2014/04/23 职场文书
银行主办会计岗位职责
2014/08/13 职场文书
2014年幼师工作总结
2014/11/22 职场文书
员工给公司的建议书
2019/06/24 职场文书
【海涛dota解说】一房久违的影魔魂守二连发
2022/04/01 DOTA
CSS控制继承中的height能变为可继承吗
2022/06/10 HTML / CSS