抓包工具Charles基本用法

抓包工具Charles基本用法我们在进行B/S架构的Web项目开发时,在前端页面与后台交互的调试的时候,通常使用在JSP中加入“debugger;”断点,然后使用浏览器的F12开发者工具来查看可能出错的地方的数据。或者使用HttpWatch来抓包分析。在开发移动端项目没有网页的情况下,就不能通过这种方式抓取数据进行分析了。这时可以使用Charles满足以上要求。Charles是一款Http代理服务器和Http监视器,当移动

大家好,又见面了,我是你们的朋友全栈君。

我们在进行B/S架构的Web项目开发时,在前端页面与后台交互的调试的时候,通常使用在JSP中加入“debugger;”断点,然后使用浏览器的F12开发者工具来查看可能出错的地方的数据。或者使用HttpWatch来抓包分析。

在开发移动端项目没有网页的情况下,就不能通过这种方式抓取数据进行分析了。这时可以使用Charles满足以上要求。Charles是一款Http代理服务器和Http监视器,当移动端在无线网连接中按要求设置好代理服务器,使所有对网络的请求都经过Charles客户端来转发时,Charles可以监控这个客户端各个程序所有连接互联网的Http通信。

一、安装Charles客户端

打开浏览器访问Charles官网https://www.charlesproxy.com/,下载相应系统的Charles安装包,然后一键安装即可。

抓包工具Charles基本用法

Charles提供两种查看封包的页签,一个是Structure,另一个是Sequence,Structure用来将访问请求按访问的域名分类,Sequence用来将请求按访问的时间排序。任何程序都可以在Charles中的Structure窗口中看到访问的域名。

抓包工具Charles基本用法

二、Charles常用功能

Charles功能十分强大,这里介绍几个开发中常用的功能。

1、抓取移动设备发送的Http请求

先将移动设备连接到Charles客户端。首先在电脑中输入cmd打开命令行窗口,输入ipconfig查看本机连接无线网络的IP地址,这个地址作为移动设备连接Charles客户端的代理地址,移动设备必须要和计算机在同一网络中才能连接上。打开Charles客户端,点击Proxy->Proxy Settings菜单,可以设置移动设备连接到Charles的端口,这样移动设备代理配置需要的ip地址和端口号都有了。Charles是通过将自己设置成代理服务器来完成抓包的,勾选系统代理后,本地系统(如果通过浏览器发送请求)发送出去的请求都能被截取下来。因此,如果想只抓取手机APP发送的请求的话,可以不勾选WindowsProxy选项,这样在测试时就不会被本机Http请求所干扰。

另外,如果想要抓取浏览器发送的请求包,勾选WindowsProxy选项之后还是抓取失败,可能是浏览器没有设置成使用系统的代理服务器,只要设置成使用系统的代理服务器,或者将浏览器的代理服务器设置成127.0.0.1:8888也可以成功。


抓包工具Charles基本用法

抓包工具Charles基本用法

抓包工具Charles基本用法

移动设备配置之后,第一次通过手机访问手机中的发送请求时,Charles会弹出提示框,提示有设备尝试连接到Charles,是否允许,如果不允许的话,手机发送请求失败,点击Allow允许,这样这个设备的IP地址就会添加到允许列表中,如果错误点击了Deny可以重启Charles会再此提示,或者通过Proxy->Access Control Settings手动添加地址,如果不想每个设备连接Charles都要点击允许的话,可以添加0.0.0.0/0允许所有设备连接到Charles。

抓包工具Charles基本用法

抓包工具Charles基本用法

2、过滤不必要的网络包

在抓取手机发送的请求时,有许多请求包是对图片等不需要关注的资源的请求,我们只想对指定目录服务器上发送的请求进行抓取,这时候就可以通过过滤网络包的方式实现。有两种实现方式:

1)选择Proxy->Recording Settings菜单,然后在include栏添加需要抓取包的指定服务器请求协议、地址、端口号,也可以在exclude栏添加不抓取包的地址。

抓包工具Charles基本用法

抓包工具Charles基本用法

2)在Sequence界面的Filter栏中填入需要过滤的关键字。

抓包工具Charles基本用法

3、代理转发

我们在进行本地开发功能的测试时,可以将手机请求的地址转发到本机地址的程序进行执行。右键选择Map Remote,配置请求转发的地址。

抓包工具Charles基本用法

并选择Tools->Map Remote Settings菜单,勾选配置的转发条目。

抓包工具Charles基本用法

也可以右击选择Map Local配置请求映射到本机地址。

抓包工具Charles基本用法

4、抓取Https请求

Charles默认情况下是抓取不到Https请求的包的,需要进行配置安装证书。选择Help->SSL Proxying->Install Charles Root Certificate,

抓包工具Charles基本用法

点击下一步,

抓包工具Charles基本用法

然后继续下一步直到导入成功,

抓包工具Charles基本用法

选择Help->SSL Proxying->Install Charles Root Certificate on aMobile Device or Remote Browse菜单,

抓包工具Charles基本用法

手机根据提示地址、端口号配置号代理后,浏览器打开http://chls.pro/ssl

抓包工具Charles基本用法

选择允许,

抓包工具Charles基本用法

安装证书,然后配置Proxy->SSL Proxying Settings,添加要抓取的Https请求,

抓包工具Charles基本用法

如果不使用Charles,想要删除手机里面的证书,可以通过手机中的设置->通用->描述文件与设备管理,删除指定的证书即可。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/132678.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • php runtimeexception,Laravel框架运行出错提示RuntimeException No application encryption…「建议收藏」

    php runtimeexception,Laravel框架运行出错提示RuntimeException No application encryption…「建议收藏」关于Laravel,出错提示,RuntimeException,No,application,encryption,key,has,been,specified.,解决方法,Laravel框架运行出错提示RuntimeExceptionNoapplicationencryptionkeyhasbeenspecified解本文实例讲述了Laravel框架运行出错提示RuntimeExc…

  • java8 stream接口终端操作 count,anyMatch,allMatch,noneMatch

    java8 stream接口终端操作 count,anyMatch,allMatch,noneMatch对于中间操作和终端操作的定义,请看《JAVA8stream接口中间操作和终端操作》,这篇主要讲述的是stream的count,anyMatch,allMatch,noneMatch操作,我们先看下函数的定义longcount();booleananyMatch(Predicate<?superT>predicate);…

  • 用计算机亩换算成平方,亩平米换算(平方米换算亩计算器)[通俗易懂]

    1平方米(㎡)=0.0015亩1亩=666.6666667平方米(㎡)平方米(㎡,英文:.方英里=10.763910417平方英尺=0.0015亩单位换算就是把平方米换算成平方分米、平方厘.使用国家规定的换算公式来进行换算。基本单位数量换算(按使用频率排序)。1亩=666.67平方米100平方米=0.15亩——就是农民朋友口语说的一分半地。1000平方米=1..1公顷=100公亩=10000平方…

  • ghost备份还原详细步骤_ghost一键备份还原

    ghost备份还原详细步骤_ghost一键备份还原注意点1:整个过程中不可动鼠标,使用键盘和触摸板操作。开始备份或还原后中不要动键盘备份从大白菜系统盘等方法进入GHOST依次进入Local→Partition(分区)→ToImage(到镜像文件)选择备份分区所在磁盘选择分区选择储存分区,写文件名字注意点2:移动备份后的文件极易造成文件的损坏,所以这里的位置一定要选好,之后不要移动位置选择压缩率(一般…

  • idea 2021.5激活码永久【在线注册码/序列号/破解码】

    idea 2021.5激活码永久【在线注册码/序列号/破解码】,https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

  • MySQL建立索引的优点和缺点

    MySQL建立索引的优点和缺点建立索引的优缺点:为什么要创建索引呢?        这是因为,创建索引可以大大提高系统的性能。         第一、通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。         第二、可以大大加快数据的检索速度,这也是创建索引的最主要的原因。         第三、可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义。         第四、在使用分组和排序子句…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号