代理工具Charles使用
代理工具Charles使用
一.跟踪HTTPS
1.下载官方的证书ssl.zip证书,解压成*.crt
2.可以通过邮箱或者发布到自己的服务器的方式,然后用手机去下载安装crt文件。
3.charles设置Proxy-->SSL,勾选Enable SSL Proxying,下面点击"Add",将你需要验证的域名+端口号添加进去并且勾选。比如:*.my.com, mobileapi.myserver.com
4.手机设置对应代理的IP,这个时候就可以看见Charles中https请求的内容了
PS: 步骤3中如果你勾选了,但是你的设备没有装证书,如果走代理则会请求失败。不勾选,可以请求成功,但是无法看见内容。
碰到mthd="Connect",request里看见“SSL Proxying not enabled for this host: enable in Proxy Settings, SSL locations”的错误,则表示第3步没有将域名设置好。
二.强大的mapping功能
简单来说,可以远程的某个文件代理到本地文件,从而进行调试。
1.打开我csdn的blog首页,然后可以在charles看到所加载的页面和相关资源,找一个js文件做代理,如图:
2,创建一个本地文件1.txt,我将realtime.js的 response拷贝下来,并且在开头添加自己的js语句 “alert(123)”
3.选择"Map Local..",设置如图:注意的是在paramter里我设置的是"*",因为很多情况下接口可能会加随机串,当然URL也可以使用通配符来匹配
4.点击OK,重新刷新页面。页面弹出alert,内容为:"123"。并且在"Notes"的Tab里会告诉你“Mapped to local file: /Users/apple/Desktop/1.txt”,表示成功
5.如果要删除已经设置的map地址,可以在Tools-->Map Local... 里管理,添加或者删除,非常方便。
三.网速模拟
Proxy-->Throttling Setting,可以模拟各种情况下的网络速度,从而可以在低速情况查看APP的使用情况
部分设置含义,Bandwidth(带宽)、Utilistation(利用百分比)、Round-trip(往返延迟)、MTU(字节)
四.断点功能
APP某个界面需要调用接口,并且返回数据来绘制界面。我们可以通过使用断点功能来篡改请求的数据或者返回的数据,达到模拟的效果。让我们来看看怎么做
1.类似于mapping,我们可以针对接口右键选择"BreakPoints",这样这个接口就被加入到断点状态了
2.需要进一步修改断点的属性,可以在菜单栏"Proxy"-->"BreakPoints"里进行添加删除或者修改,配置方式和mapping雷同,也可以使用通配符来操作,并且可以选择这个断点是在request还是response,还是两者都要
3.这个时候再刷新界面,会直接跳转到断点模版,这个时候你可以在对应状态情况下修改request或者response,然后点击下方按钮“Execute”。
五.重复发送
这个和前端似乎关系不大,可以对接口测试健壮性,也是右键点击某个请求,然后"repeat" 或者"repeat Advance",后者可以设置循环调用次数和间隔
六.支持中文显示
打开Charles.app,找到Info.plist,然后添加参数-Dfile.encoding=UTF-8
参考
http://www.36ria.com/6278
代理工具Charles使用的更多相关文章
- MAC下代理工具Charles使用
一.跟踪HTTPS 1.下载官方的证书ssl.zip证书,解压成*.crt 2.可以通过邮箱或者发布到自己的服务器的方式,然后用手机去下载安装crt文件. 3.charles设置Proxy--> ...
- mitmproxy 代理工具介绍:rewrite和map local实现
在接口测试中,会用到抓包工具或者代理工具,常用代理工具包括charles. burpsuite. fiddler.mitmproxy等,ssh -D参数 可实现socks5代理.网络嗅探工具可以使用t ...
- mac端的优秀抓包工具——Charles使用
http://my.oschina.net/u/2340880/blog/508688 mac端的优秀抓包工具——Charles使用 一.简介 二.安装与使用 三.使用Charles在mac上进行抓包 ...
- 抓包工具Charles的使用教程
参考:https://zhubangbang.com/charlesproxy 如果您是您一次使用Charles,可能对下面的感兴趣. Charles破解版免费下载和安装教程 Charles手机抓包设 ...
- mac 抓包工具charles v3.9.3 安装破解步骤
一.下载 先到它的官网http://www.charlesproxy.com/可下载到最新版本,这个下载有点慢,我已经将它放到网盘中了:http://pan.baidu.com/s/1skTXRIl ...
- 【转】fiddler-http协议调试代理工具
题目有一些激进.但是在前端界打滚了这么多年,fiddler一直都是陪着我走过来了.它就是一个抓包神奇,代理神器.它的厉害之处,我简单地说一下,希望你们看了以后,能点上32个赞. 1.fiddler为何 ...
- Mac上的抓包工具Charles
http://blog.csdn.net/jiangwei0910410003/article/details/41620363 $********************************** ...
- 跨平台web调试代理工具---whistle
whistle是基于Node实现的跨平台web调试代理工具,支持windows.mac.linux等所有安装了Node的操作系统,可以部署在本地机器.虚拟机或远程服务器,并通过本地网页查看或修改HTT ...
- [MACOS] Mac上的抓包工具Charles
转载自: http://blog.csdn.net/jiangwei0910410003/article/details/41620363 今天就来看一下Mac上如何进行抓包,之前有一篇文章介绍了使用 ...
随机推荐
- 关于"implicit declaration of function 'gettimeofday' is invalid in c99"的解决
http://blog.csdn.net/macmini/article/details/10503799 当我们使用 gettimeofday(&time, NULL);时,会出现这样一个W ...
- Video for Linux Two API Specification Revision 2.6.32【转】
转自:https://www.linuxtv.org/downloads/legacy/video4linux/API/V4L2_API/spec-single/v4l2.html Video for ...
- C++ bitset类的使用与简介 [转载]
有些程序要处理二进制位的有序集,每个位可能包含的是0(关)或1(开)的值.位是用来保存一组项或条件的yes/no信息(有时也称标志)的简洁方法.标准库提供了bitset类使得处理位集合更容易一些.要使 ...
- POCO库中文编程参考指南(6)Poco::Timestamp
1 类型别名 三个时间戳相关的类型别名,TimeDiff表示两个时间戳的差,第二个是以微秒为单位的时间戳,第三个是以 100 纳秒(0.1 微妙)为单位的时间戳: typedef Int64 Time ...
- MongoDB中$redact操作符的使用
介绍 redact <- redaction 修订/校验,意思是对文档内容进行过滤,选择一些过滤或保留的信息 . access level 存取等级 有三种: - $$DESCEND 返回当前等 ...
- POJ 2226.Muddy Fields-二分图最大匹配(最小点覆盖)
Muddy Fields Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 12565 Accepted: 4651 Des ...
- Python的程序结构[0] -> 属性/Property[0] -> 类属性、实例属性和私有属性
类属性.实例属性和私有属性 Python中类的属性主要包括类属性,实例属性和私有属性,下面是对三种属性的简单介绍 类属性 / Class Property 类属性在__init__()之外初始化,在外 ...
- Binary Tree Maximum Path Sum - LeetCode
Given a binary tree, find the maximum path sum. For this problem, a path is defined as any sequence ...
- [POI2014]Beads
题目大意: 有$n(n\leq10^6)$种颜色,第$i$种颜色有$c_i(\sum c_i\leq10^6)$个,指定第一个颜色为$a$,最后一个颜色为$b$,问对于一个长度为$m=\sum c_i ...
- android xml 布局文件中 android:ems="10"
宽度为10个字符的宽度 xml中 android:ems属性 ,作为EditText 默认生成 的属性,其含义是需要编辑的 字符串长度 .设置为10时,最多编辑 10个em ,一个em单位是 两个in ...