网站首页 > 技术文章 正文
代理工具有很多像比较有名的Charles、Fiddler,最近发现了一款宝藏代理工具whistle,看到团队中有很多人在用,刚开始还有点不太理解,前端我们一般代理接口解决跨域这些不都是直接在webpack、vite中配置代理规则就行了。
直到使用了whistle之后发现真香,提供的功能也比较强大,下面就分享几个在前端开发中实际使用的场景。
注意需要依赖本地node环境,谷歌浏览器中一般会配合SwitchyOmega插件来使用,具体的一些基础配置可以参考whistle官方文档。
接口数据mock
开发中如果后端接口还未开发完,往往需要我们自己mock接口数据,利用whistle可以很方便地将项目中某个接口代理到本地的json文件,这样想要什么数据我们直接修改json文件就行了。
还比如测试环境中某个接口挂了导致整体流程没法往下走,后端一时半会还处理不好,我们就可以直接将出问题的接口代理成本地的json文件中的数据,让使用流程能顺畅往下走。
cafe123.cn/api/user file:///c:/Users/cafehaus/Desktop/user.json
本地放在桌面上的user.json文件
{
"name": "ZHOU",
"age": 18
}
接口代理
接口代理在日常开发中比较常用,一般用来临时解决跨域问题,可以用来代替webpack、vite中的devServer配置,或者直接调用后端开发本地起的服务:
127.0.0.1:8080/api/ www.cafe123.cn
前端静态资源代理
这个一般是项目中某些场景限定了只能特定的域名才能访问,比如公共的统一登录只能配置了的白名单域名才能访问,那我们本地开发时直接用localhost、127.0.0.1下去访问就会报错,这个时候我们就可以把项目中的接口请求地址设置成特定的域名,然后域名下的js、css、html、png...这些静态资源代理到本地服务上,这样就能实现访问的前端代码还是本地的:
/cafe123.cn\/.*?\.(html|js|css|png|jpg)/ http://127.0.0.1:3000
本地 localhost 127.0.0.1 不同端口之间代理
在whistle的代理面板中默认是看不到127.0.0.1、localhost的请求的,但在实际开发中我们有可能需要转发一个本地服务的需求,这个时候就需要从127.0.0.1:xxxx代理到127.0.0.1:zzzz,如果你直接在whistle中按这样的端口配置代理会发现是没用的,并不能将本地某个端口代理到另一个端口上。
解决办法是需要修改一下浏览器SwitchyOmega插件的不代理地址列表配饰:
# 默认是
127.0.0.1
::1
localhost
# 需要修改成下面的(注意直接清空默认的设置实测也是没有效果的)
<-loopback>
移动端请求抓包
移动端项目需要在手机上调试或排查问题时,也是可以用whistle来实现代理抓包。不过这个一般测试用得比较多,配置相对复杂一点,具体可以参考whistle官方文档。
- 上一篇: 前端应该怎么学习(前端怎么学好)
- 下一篇: 从代码到车轮:一个前端司机的第十日生存报告
猜你喜欢
- 2025-05-11 FANUC修改前端目录教程
- 2025-05-11 前端分享-Set你不知道的事
- 2025-05-11 jq+ajax+bootstrap改了一个动态分页的表格
- 2025-05-11 千万级大表分页查询效率剧降,你会怎么办?
- 2025-05-11 Elasticsearch深度分页
- 2025-05-11 如何写一个简单的分页
- 2025-05-11 手速太快引发分页翻车?前端竞态陷阱揭秘
- 2025-05-11 「linux」Socket缓存是如何影响TCP性能的?
- 2025-05-11 深度剖析:如何有效解决缓存穿透问题
- 2025-05-11 Ehcache:Java程序员的高性能缓存利器
你 发表评论:
欢迎- 05-11FANUC修改前端目录教程
- 05-11前端分享-Set你不知道的事
- 05-11jq+ajax+bootstrap改了一个动态分页的表格
- 05-11千万级大表分页查询效率剧降,你会怎么办?
- 05-11Elasticsearch深度分页
- 05-11如何写一个简单的分页
- 05-11手速太快引发分页翻车?前端竞态陷阱揭秘
- 05-11「linux」Socket缓存是如何影响TCP性能的?
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端md5加密 (49)
- 前端路由 (55)
- 前端数组 (65)
- 前端定时器 (47)
- 前端懒加载 (45)
- 前端接口 (46)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle约束 (46)
- oracle 中文 (51)
- oracle链接 (47)
- oracle的函数 (57)
- mac oracle (47)
- 前端调试 (52)
- 前端登录页面 (48)
本文暂时没有评论,来添加一个吧(●'◡'●)