HttpCanary使用指南——各种神奇的插件
HttpCanary更多资料,点我!!!
作为目前Android平台最强大的抓包工具,HttpCanary从设计之初就规划了插件功能(2.6.0版本之前称为‘模组’)。基于NetBare框架的虚拟网关-拦截器设计,HttpCanary可以实现非常多的扩展功能,比如Host屏蔽、IP屏蔽等。我将一些扩展功能都以插件的形式,集成到HttpCanary中,既互相独立又相互作用,最典型的就是静态注入器。
这篇文章将详细介绍下HttpCanary内置的各种神奇插件,包括如何使用以及使用场景。
使用条件
HttpCanary版本 v2.6.0+
复制代码
插件安装
HttpCanary -> 设置 -> 插件管理 -> 右上角+号 -> 插件仓库
复制代码
插件1:Host屏蔽
利用Host屏蔽插件,我们可以屏蔽对指定Host或者服务器IP的Http请求,比如屏蔽广告请求等。
1.1 使用方式
创建一个名为hosts.txt的文本文件,将需要屏蔽的Host或者IP以一行一行的格式添加进去,然后复制到/HttpCanary/plugins/HostBlock/目录下。比如:
www.hello.com
www.work.com
www.bug.com:8080
复制代码
除了Host,也可以加入IP地址:
10.11.12.13
10.10.10.10
123.123.123.123
复制代码
当然,还可以Host和IP混着写:
www.hello.com
10.11.12.13
10.10.10.10
www.work.com
123.123.123.123
www.bug.com:8080
复制代码
1.2 注意事项
Host后面有些情况下需要加入端口号,具体可以到抓包内容总览中查看Host后面是否有端口号。
插件2:MimeType屏蔽
和Host屏蔽类似,MimeType屏蔽插件可以用来屏蔽指定类型的Mime-Type,但不同的是MimeType屏蔽插件的屏蔽功能分为上行屏蔽和下行屏蔽,即可以配置屏蔽请求或者屏蔽响应。
什么是MimeType?它是一种包含在Http头部的Content-Type中的数据,用来标识数据类型,比如图片、Json、Html等,各种MimeType的定义请点这里!
2.1 使用方式
如果要屏蔽包含指定MimeType的请求,创建一个名为req-mimes.txt的文本文件,将需要屏蔽的MimeType以一行一行的格式添加进去,然后复制到/HttpCanary/plugins/MimeTypeBlock/目录下。如果是要屏蔽响应,则文本文件名应为res-mimes.txt。
比如说我要屏蔽一些视频广告,可以在res-mimes.txt中添加如下:
video/mp4
复制代码
这样,所有mp4类型的数据响应都被HttpCanary屏蔽了,包括视频广告等。
2.2 插件应用
下面以企鹅家的视频应用为例,看一下视频广告的拦截效果。
首先,配置好插件并启用。简单步骤如下:
- 打开/HttpCanary/plugins/MimeTypeBlock目录,编辑res-mimes.txt。
- 加入一行:video/mp4,然后保存。
- 启动首页抓包开关按钮。
准备好之后,打开企鹅视频应用,注意先把缓存清理下,防止有本地广告视频缓存。
来个效果图:
开着HttpCanary的时候广告已经load不出来了,屏蔽生效!
插件3:图片、音频和视频下载器
有的时候,我们希望能保存某些图片、视频等媒体文件并分享到微信好友或朋友圈,比如一段精彩的电影预告片等。但是一般情况下,网站或者应用只提供浏览的功能,不会提供下载或者保存功能。这个时候HttpCanary的下载器插件就派上用场了。
HttpCanary的下载器一共有三个,分别是图片下载、音频下载、视频下载。原理都是通过检测Http响应数据头部中的Content-Type,从而判断是否需要保存响应数据。
下面以图片下载器插件为例。
3.1 使用方式
安装好插件后,直接在首页开启抓包按钮。然后所有的图片请求文件都会自动保存到/HttpCanary/plugins/ImageDownloader目录下。
连任何Icon都不会放过!
插件4:请求统计表
如果希望将所有抓包到的请求信息,以Excel表的形式导出,这个插件就派上用场了!
请求数据统计的维度包括:
- Url
- 服务器IP
- 协议
- 请求方法
- 响应码
- 请求开始时间
- 请求响应时间
- 请求结束时间
- 请求数据大小(B)
- 响应数据大小(B)
- 耗时1(ms)
- 耗时2(ms)
其中包括一些请求时间维度,可以用来计算网络请求的平均耗时,是性能测试一款利器。
4.1 使用方式
安装好插件后,直接在首页开启抓包按钮。当停止抓包后,会自动在/HttpCanary/plugins/StatsOverview目录下生成本次抓包的Excel表格。
插件5:微信定位漂移
微信定位漂移插件是用来修改定位经纬度的,实现“蒙多想去哪儿就去哪儿”的功能。包括:聊天时发送的地理位置,发朋友圈的地理位置。
5.1 使用方式
将经纬度按照 经度,纬度 的格式复制到粘贴板上,比如可以利用百度地图坐标拾取系统获取指定地点的经纬度(右上角直接复制即可)。完成后启动首页抓包按钮。
测试效果的话,也可以使用长按上图描述文案中的经纬度,然后复制。我们以116.41667,39.91667(北京王府井)为例,当然开发者本人是远在深圳。
微信中发送位置,显示如下:
成功漂移!
再来看朋友圈的地理位置:
成功漂移!
插件须知
由于每个插件都是独立的拦截器,且每个拦截器都会对网络流量进行分析探测,所以如果启用的插件过多,对性能是有一定的影响的,比如卡顿,访问网络慢等。
另外,如果说只需要用到插件功能,而不需要关心具体抓包内容,比如下载器、广告屏蔽等。强烈建议在设置中开启性能模式!
最后,关于插件的启用、禁用、删除,均可以在设置->插件管理->长按插件来管理。
结语
如果您对HttpCanary有任何疑问或者建议,可以访问HttpCanary Github并创建issue!
插件的使用指南到此结束,感谢您的阅读!
转载于:https://juejin.im/post/5c965958e51d452bcb0d9835
HttpCanary使用指南——各种神奇的插件相关推荐
- 《花雕学AI》用Edge和chrome浏览器体验GPT-4智能聊天的神奇免费插件,Sider – 聊天机器人的新选择
你有没有想过和人工智能聊天?你有没有想过用浏览器就能和GPT-4这样的先进的聊天机器人对话?如果你有这样的想法,那么你一定要试试Sider这个神奇的免费插件. Sider(Sider – AI Sid ...
- html5怎么兼容js 插件,Modernizr.js入门指南(HTML5CSS3浏览器兼容插件)
HTML5 和 CSS3 的快速发展,给我们带来了极大的便利,比如从此再也不用花费大量的时间只是为了设计一个圆角的效果. 但是!我们不能像控制机器一样来控制所有的人都一夜之间升级到现代浏览器,因为那些 ...
- NW.JS填坑指南(解决Flash插件、视频播放等故障)
目录 NW.JS填坑指南 NW.js是什么? NW.js 和 electron的选择 开发工具IDE 下载nwjs 版本信息 简单的实例 改图标 改合成exe的图标 改图标第二种方案是 播放不了视频 ...
- 嗨:VSCode和IDEA都请安装上这个神奇的插件
点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 首先,打开VisualStudio Code -- 最牛逼 ...
- VScode使用全指南 (环境配置,插件推荐,美化) (C++,Python,LaTeX,R...)
谨以本文记录我用vscode一年的坑比经历,为了这编辑器学了git,json,正则(去死吧qwq) 简介那堆废话就不说了,直接开始! 1.安装 打开官网直接下载(推荐测试版insider), 安装时让 ...
- firefox的一些插件~
谈谈主题和扩展 FF最大的特点就是有浩如烟海的主题和扩展支持,换句话说,小狐狸本身也许并不是最棒的,但是在你的调教下,小狐狸有着无限提高的空间,这点才是FF浏览器的精髓所在.关于主题,不想说太多,个人 ...
- 10个适用于WordPress的最佳目录插件
目录是一种流行且有利可图的网站. 目录网站列出了供用户浏览的产品和服务. 它们是根据位置和类别传递信息的数据库. 它们可以包含不同类别的列表形式的大量数据. 目录网站具有各种规模和形状:复杂,简单,本 ...
- 10 款 VS Code 插件神器,第 7 款超级实用!
VS Code 是这两年非常热门的一款 IDE,它不仅有提升开发体验的界面.轻量化的编辑器,还有丰富而强大的插件,这些优秀的插件使得 VS Code 生态体系更加吸引人,让开发效率大大提升.本文来介绍 ...
- 小程序工程化实践(上篇)-- 手把手教你撸一个小程序 webpack 插件,一个例子带你熟悉 webpack 工作流程...
本文基于 webpack 4 和 babel 7,Mac OS,VS Code 小程序开发现状: 小程序开发者工具不好用,官方对 npm 的支持有限,缺少对 webpack, babel 等前端常用工 ...
最新文章
- 激光雷达数据到云cloud
- Oracle学习笔记十三 触发器
- python是一种面向对象、直译式的脚本编程语言_什么是python编程语言
- 【C 语言】二级指针内存模型 ( 指针数组 | 二维数组 | 自定义二级指针 | 将 一、二 模型数据拷贝到 三 模型中 并 排序 )
- Linxu嵌入式汇编语言
- Activemq-In-action(三)
- mailto 附带附件_为什么附带项目如此重要
- vue项目中eslint检查警告——“Trailing spaces not allowed”
- numpy学习之创建数组
- HoudahSpot 6 for Mac(支持内容高亮的搜索神器)支持m1
- Python 读写matlab中.mat文件
- 地理信息数据 中国市级行政区划 SHP
- Effective Java目录
- 职场思想分享009 | 一个人对待工作的态度决定其成绩的多少?
- linux 电源管理 regulator,Linux电源管理-Linux regulator framework概述
- 码农考驾照之科目二操作点
- 使用JS将table表格导出为excel
- 测试删除hive表时出错
- 蝴蝶网络 Butterfly network
- 上海一女子楼道内被捅死 目前警方已介入调查