前端开发中使用whistle代理工具

简介: Whistle是一款强大的代理工具,相比Charles、Fiddler更轻量且功能丰富。它适用于前端开发中的多种场景,如接口数据Mock、接口代理、静态资源代理等。通过简单的规则配置,可将接口指向本地JSON文件,解决跨域问题,或代理静态资源以满足特定域名访问需求。此外,Whistle还支持本地端口间转发与移动端请求抓包,搭配SwitchyOmega插件使用效果更佳。需注意,使用前请确保已安装Node环境并参考官方文档完成基础配置。

代理工具有很多像‌比较有名的Charles、‌Fiddler,最近发现了一款宝藏代理工具whistle,看到团队中有很多人在用,刚开始还有点不太理解,前端我们一般代理接口解决跨域这些不都是直接在webpack、vite中配置代理规则就行了。

直到使用了whistle之后发现真香,提供的功能也比较强大,下面就分享几个在前端开发中实际使用的场景。

注意需要依赖本地node环境,谷歌浏览器中一般会配合SwitchyOmega插件来使用,具体的一些基础配置可以参考whistle官方文档。
1ea8a5c058cc1c2287a56b5a8fef1606.jpeg

接口数据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官方文档。


人人都是码农:AI时代,零基础也能学会编程!


关于作者:从美工、前端开发一路成功转型Java后端的野生码农🧑‍,分享UI转前端、前端转Java、全栈开发、独立开发和程序员副业...
相关文章
|
7月前
|
缓存 移动开发 Rust
前端构建工具 Mako 开源了
Hi,我是 sorrycc,Mako 的主要负责人之一,也是 Umi、Dva、Father 等库的作者。 很开心,Mako 终于开源了! Github 地址:https://github.com/umijs/mako/ 今天和大家正式介绍下他。
300 3
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
DeepSeek Artifacts:在线实时预览的前端 AI 编程工具,基于DeepSeek V3快速生成React App
DeepSeek Artifacts是Hugging Face推出的免费AI编程工具,基于DeepSeek V3,支持快速生成React和Tailwind CSS代码,适合快速原型开发和前端组件构建。
1610 39
DeepSeek Artifacts:在线实时预览的前端 AI 编程工具,基于DeepSeek V3快速生成React App
|
6月前
|
前端开发 JavaScript API
探索React Hooks:前端开发的革命性工具
【10月更文挑战第5天】探索React Hooks:前端开发的革命性工具
|
4月前
|
人工智能 前端开发 小程序
2024年12月30日蜻蜓蜻蜓AI工具系统v1.0.0发布-优雅草科技本产品前端源代码已对外开源可免费商用-优雅草老八
2024年12月30日蜻蜓蜻蜓AI工具系统v1.0.0发布-优雅草科技本产品前端源代码已对外开源可免费商用-优雅草老八
182 31
2024年12月30日蜻蜓蜻蜓AI工具系统v1.0.0发布-优雅草科技本产品前端源代码已对外开源可免费商用-优雅草老八
|
2月前
|
人工智能 自然语言处理 前端开发
VSCode AI提效工具,通义灵码前端开发体验
通义灵码2.0是一款强大的VS Code插件,安装简便,图标易记。其亮点包括接入deepseek-v3/r1模型,支持智能问答、AI编程、代码优化及贴图提问;多语言和编辑器支持;个性化使用满足不同需求。个人版完全免费,节省12%开发时间。对比1.0版本,2.0在功能实现上更加完善,尤其在前端项目中表现出色,根据需求描述生成完整项目结构和详细代码,极大提升开发效率。
235 0
|
4月前
|
前端开发 JavaScript 开发者
前端项目代码规范工具 (ESLint. Prettier. Stylelint. TypeScript)
前端项目代码规范工具 (ESLint. Prettier. Stylelint. TypeScript)
288 4
|
5月前
|
前端开发 数据处理 Android开发
Flutter前端开发中的调试技巧与工具使用方法,涵盖调试的重要性、基本技巧如打印日志与断点调试、常用调试工具如Android Studio/VS Code调试器和Flutter Inspector的介绍
本文深入探讨了Flutter前端开发中的调试技巧与工具使用方法,涵盖调试的重要性、基本技巧如打印日志与断点调试、常用调试工具如Android Studio/VS Code调试器和Flutter Inspector的介绍,以及具体操作步骤、常见问题解决、高级调试技巧、团队协作中的调试应用和未来发展趋势,旨在帮助开发者提高调试效率,提升应用质量。
147 8
|
5月前
|
监控 前端开发 JavaScript
前端稳定性工具-Sentry
【11月更文挑战第9天】Sentry 是一个开源的错误和性能监控平台,支持多种编程语言和框架。它能够捕获前端应用中的各种错误和性能问题,提供详细的错误信息和用户行为关联,帮助开发团队快速定位和解决问题,优化应用性能。但需注意隐私保护、数据准确性和成本控制。
420 3
|
5月前
|
前端开发 JavaScript API
前端开发的秘密武器:这些工具让你轻松应对各种复杂动画效果!
【10月更文挑战第30天】前端开发中,动画效果为页面增添了无限生机。CSS3的@keyframes规则和JavaScript动画库如GSAP、Anime.js等,使开发者能轻松实现从简单到复杂的动画效果。掌握动画原理和设计原则,结合工具和库,可以创造出既美观又实用的动画,提升用户体验。
123 4
|
5月前
|
Web App开发 前端开发 JavaScript
前端开发的秘密武器:这些工具让你轻松应对各种复杂布局!
【10月更文挑战第31天】前端开发充满挑战,尤其是在处理复杂布局时。本文介绍了几种关键工具和技术,如HTML和CSS基础、Firefox开发者工具、Visual Studio Code以及Vue、React和Angular等前端框架,帮助开发者高效应对复杂布局,提升代码质量和用户体验。
82 2
下一篇
oss创建bucket