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 相关文章推荐
AngularJS HTML编译器介绍
Dec 06 Javascript
对比分析AngularJS中的$http.post与jQuery.post的区别
Feb 27 Javascript
javascript 判断两个日期之差的示例代码
Sep 05 Javascript
javascript日期处理函数,性能优化批处理
Sep 06 Javascript
不得不分享的JavaScript常用方法函数集(上)
Dec 23 Javascript
使用Sticky组件实现带sticky效果的tab导航和滚动导航的方法
Mar 22 Javascript
Node.js DES加密的简单实现
Jul 07 Javascript
JavaScript设计模式之单例模式详解
Jun 09 Javascript
vue.js的手脚架vue-cli项目搭建的步骤
Aug 30 Javascript
在Node.js中将SVG图像转换为PNG,JPEG,TIFF,WEBP和HEIF格式的方法
Aug 22 Javascript
node.js中对Event Loop事件循环的理解与应用实例分析
Feb 14 Javascript
JavaScript封装单向链表的示例代码
Sep 17 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中使用curl入门教程
2015/07/02 PHP
php实现倒计时效果
2015/12/19 PHP
常用PHP数组排序函数归纳
2016/08/08 PHP
php微信公众平台开发(一) 配置接口
2016/12/06 PHP
PHP开启目录引索+fancyindex漂亮目录浏览带搜索功能
2019/09/23 PHP
php设计模式之原型模式分析【星际争霸游戏案例】
2020/03/23 PHP
让iframe子窗体取父窗体地址栏参数(querystring)
2009/10/13 Javascript
javascript打印大全(打印页面设置/打印预览代码)
2013/03/29 Javascript
防止xss和sql注入:JS特殊字符过滤正则
2013/04/18 Javascript
js对象内部访问this修饰的成员函数示例
2014/04/27 Javascript
JS实现跟随鼠标立体翻转图片的方法
2015/05/04 Javascript
jQuery实现仿微软首页感应鼠标变化滑动窗口效果
2015/10/08 Javascript
在JavaScript中对HTML进行反转义详解
2016/05/18 Javascript
将List对象列表转换成JSON格式的类实现方法
2016/07/04 Javascript
js中scrollTop()方法和scroll()方法用法示例
2016/10/03 Javascript
js实现滑动到页面底部自动加载更多功能
2017/02/15 Javascript
简单了解node npm cnpm的具体使用方法
2019/02/27 Javascript
elementUI 动态生成几行几列的方法示例
2019/07/11 Javascript
webpack 如何同时输出压缩和未压缩的文件的实现步骤
2020/06/05 Javascript
基于Django静态资源部署404的解决方法
2019/07/28 Python
python脚本执行CMD命令并返回结果的例子
2019/08/14 Python
Python 矩阵转置的几种方法小结
2019/12/02 Python
Python如何利用Har文件进行遍历指定字典替换提交的数据详解
2020/11/05 Python
美国环保妈妈、儿童和婴儿用品购物网站:The Tot
2019/11/24 全球购物
linux面试题参考答案(11)
2012/05/01 面试题
给朋友的道歉信
2014/01/09 职场文书
《口技》教学反思
2014/02/21 职场文书
财务会计自荐信范文
2014/02/21 职场文书
2014年社会实践活动总结范文
2014/04/29 职场文书
公务员政审单位鉴定材料
2014/05/16 职场文书
关于旅游的活动方案
2014/08/15 职场文书
学前教育见习总结
2015/06/23 职场文书
优质护理服务心得体会
2016/01/22 职场文书
2017新年晚会开幕词
2016/03/03 职场文书
解决python3安装pandas出错的问题
2021/05/20 Python
python基础之错误和异常处理
2021/10/24 Python