Android 常用抓包工具介绍之Charles
Charles是一款抓包修改工具,相比起TcpDump,charles具有界面简单直观,易于上手,数据请求控制容易,修改简单,抓取数据的开始暂停方便等等优势!前面介绍了如何使用TcpDump抓包,下面给大家介绍一下Charles的使用。
Charles抓包
Charles是一个HTTP代理服务器/HTTP监视器/反转代理服务器。它允许一个开发者查看所有连接互联网的HTTP通信。这些包括request、response现HTTP headers(包含cookies与caching信息)。
1、配置抓包环境
1)下载Charles
2)安装Charles
下载完毕之后,直接进行安装即可正常使用
(ps:不注册的话,每次使用30分钟,工具就会自动关闭)。
2、使用Charles进行抓包
1)Http抓包
i.打开Charles抓包工具
ii.打开网络偏好设置查看本机IP地址为:10.1.1.139
注:Android 设备需要与PC连接同一网段
iii.连接同一WiFi后设置本机代理
iv.这里的IP地址为:10.1.1.139;端口号默认为:8888
v.在Charles上查看即可
2)Https抓包(中间人)
a)下载Charles证书
如果要查看Https的数据需要安装Charles的证书
下载地址: http://www.charlesproxy.com/assets/legacy-ssl/charles.crt
b)安装Charles证书
将下载完成的charles.crt证书push到Android设备上(也可用常用工具)
$ adb push charles.crt /sdcard/
i.进入设置à安全à从手机存储卡安装证书
ii.找到charles.crt点击安装
iii.输入证书名称为:charles
注:点击确认后需要设置手机解锁密码
iv.安装成功后即可通过Charles查看Https的数据了
c)添加需要查看的Https地址
i.点击ProxyàSSL Proxying Settings…
ii.在SSL Proxying中点击Add添加Https域名
iii.可在charles中查找需要查看的Https域名复制到Host中点击Ok即可
iv.配置完成后重新访问Https域名,即可查看Https数据
3、使用Charles模拟弱网环境
测试过程中经常需要模拟网络环境,那么如何通过Charles来模拟弱网呢?
i.选择ProxyàThrottle Setting…
ii.勾选Enable Throttle并选择需要设置的网络环境即可
4、使用Charles设置断点
Charles能在网络访问过程中设置断点,对于开发者和测试人员来说,堪称神器。它能够断到发送请求前(篡改Request)和请求后(篡改Response)
1)使用Breakpoint Settings设置断点
2)选中域名插入断点
i.右击选中需要修改的域名,点击Breakpoints
ii.重新访问该域名,选择Edit Request进入修改页面
注:Charles能够修改Request的:URL、Headers、Text、Raw;
以及Response的:Headers、Set Cookie、Text、Html、Raw;
这里以Request的headers参数为例进行修改
iii.这里查看原Headers携带参数为:{NBSHeaderTest1,NBSApp;b,NBSApp}
现在通过断点方式修改为:{NBSHeaderTest1,TingyunTest}
iv.修改完毕后点击Execute查看Request中的Headers已经修改为NBSHeaderTest1 TingyunTest
5、使用repeat测试
在Charles中可以通过repeat和repeat Advances来重复发送请求
repeat Advances可以自定义重复次数和重复间隔
原文链接:http://blog.tingyun.com/web/article/detail/516
Android 常用抓包工具介绍之Charles的更多相关文章
- Android常用抓包工具之TcpDump
➠更多技术干货请戳:听云博客 做为一个测试人员,工作中经常会用到数据抓包工具来进行数据分析和验证,下面就简单介绍一下工作中常用的抓包工具. TcpDump抓包 Tcpdump是一个用于截取网络分组,并 ...
- 抓包工具Fiddler及Charles
一.抓包工具介绍 1.charles抓包如何抓取手机端数据包(安卓手机) (1)获取pc的IP地址 (2)打开charles里的[Proxy]-[Proxy setting],设置端口号,默认为888 ...
- 爬虫05 /js加密/js逆向、常用抓包工具、移动端数据爬取
爬虫05 /js加密/js逆向.常用抓包工具.移动端数据爬取 目录 爬虫05 /js加密/js逆向.常用抓包工具.移动端数据爬取 1. js加密.js逆向:案例1 2. js加密.js逆向:案例2 3 ...
- C#一步一步学网络辅助开发(1)--常用抓包工具的使用
这次写的是一个系列,是让大家了解如何进行网络的辅助开发.要进行网络辅助开发抓包工具是必不可少的,下面就让大家熟悉一下常用的一些抓包工具, 1,Fiddler 这个工具是我目前用的最多的一款抓包工具,不 ...
- 抓包工具--Fiddler及charles的使用
Fiddler和charles--是抓包工具,可以抓到pc端的请求,手机上设置代理后也可以抓到手机上的请求,也可以修改请求数据和返回的数据. 1.网页抓包,打开Fiddler或Charles应用直接访 ...
- ios 抓包工具 ios青花瓷charles
iOS_青花瓷Charles抓包,ios青花瓷charles 使用青花瓷Charles抓取手机端的网络请求: 第一步,下载安装并打开Charles 第二步,去掉菜单[Proxy]以下的[Mac OSX ...
- Charles抓包工具介绍
1.Charles是什么? Charles是一款基于http协议的代理服务器,通过称为电脑或者浏览器的代理,然后截取请求和请求结果达到分析抓包的目的. 2.Charles有哪些用途? (1)能够分析前 ...
- Fiddler抓包工具介绍
Fiddler官网 https://www.telerik.com/download/fiddler Fiddler原理 当你打开Fiddler工具的时候你会发现你浏览器的代理服务器被添加了127.0 ...
- android App抓包工具的应用(转)
安装好 fiddler ,手头有一部Android 手机,同时 还要有无线网,手机和 电脑在同一个无线网络.这些条件具备,我们就可以 开始下面的步骤了. 正题 :Fiddler 主菜单 Tools - ...
随机推荐
- char类型的说明
CREATE TABLE [dbo].[CharTest]( ) NULL, ) NULL, ) NULL, ) NULL ) insert into dbo.CharTest ( Char, Var ...
- 慎用Assembly.LoadFile()和Assembly.LoadFrom()
经测这俩方法会锁住文件,导致程序运行期间无法对load过的程序集文件进行更名/删除/覆盖等等操作,考虑用Assembly.Load()文件字节组替代: Assembly.Load(File.ReadA ...
- 15天玩转redis —— 第四篇 哈希对象类型
redis中的hash也是我们使用中的高频数据结构,它的构造基本上和编程语言中的HashTable,Dictionary大同小异,如果大家往后有什么逻辑需要用 Dictionary存放的话,可以根据场 ...
- Oracle 数据库基础学习 (三) Oracle 四个表结构
Oracle 四个表的 emp dept salgrade bunus 的结构,记住有利于后期SQL语句的学习 雇员表(emp) No. 字段 类型 描述 1 empno NUMBER(4) 表示 ...
- MUI(5)
今天实现9宫格菜单.先上效果图: 就是这个效果咯,界面不太美观,底部导航栏是为了苹果用户没有返回按键设计的,只是为了方便演示而已,没有做过多的处理.首先先说一下这个底部导航栏如何实现,这个底部导航栏小 ...
- Scalaz(43)- 总结 :FP就是实用的编程模式
完成了对Free Monad这部分内容的学习了解后,心头豁然开朗,存在心里对FP的疑虑也一扫而光.之前也抱着跟大多数人一样的主观概念,认为FP只适合学术性探讨.缺乏实际应用.运行效率低,很难发展成现实 ...
- Runtime获取一个类中所有成员变量的名字和类型
- Monkey测试4——Monkey命令行可用的全部选项
Monkey命令行可用的全部选项 常规 --help 列出简单的用法. -v 命令行的每一个-v将增加反馈信息的级别. Level 0(缺省值)除启动提示.测试完成和最终结果之外,提供较少信息. Le ...
- loadrunner录制回放常见问题及解决办法
1.录制错误 1)录制本机 WebTours 或录制本地网站无法打开 当 使 用 Vista 以 后 的 操 作 系 统 时 , 会 出 现 该 问 题 . 这 是 由 于 在 本 地Wi ...
- Java经典实例:按字符颠倒字符串
使用StringBuilder类的reverse()方法来实现. /** * Created by Frank */ public class StringRevChar { public stati ...