代理工具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上如何进行抓包,之前有一篇文章介绍了使用 ...
随机推荐
- android hook 框架 libinject 如何实现so注入
前面两篇 android hook 框架 libinject2 简介.编译.运行 android hook 框架 libinject2 如何实现so注入 实际运行并分析了 Android中的so注入( ...
- windows 添加自助白名单
由于公司分部用的是动态IP,又需要用到总部的OA系统,OA完全开放对外不安全,所以写了这个工具 项目地址 https://github.com/cainiaoit/Windows-firewall-s ...
- Selenium2+python自动化15-select下拉框【转载】
前言最近由于工作原因,更新慢了一点,今天终于抽出一点时间给大家继续更新selenium系列,学习的脚本不能停止,希望小伙伴能多多支持. 本篇以百度设置下拉选项框为案例,详细介绍select下拉框相关的 ...
- Android 之 AlarmManager(定时器) 的介绍和使用
AlarmManager 包含的主要方法: // 取消已经注册的与参数匹配的定时器 void cancel(PendingIntent operation) //注册一个新的延迟定时器void set ...
- J.U.C并发框架源码阅读(一)AtomicInteger
基于版本jdk1.7.0_80 java.util.concurrent.atomic.AtomicInteger 代码如下 /* * ORACLE PROPRIETARY/CONFIDENTIAL. ...
- java序列化的机制与原理
有关Java对象的序列化和反序列化也算是Java基础的一部分,下面对Java序列化的机制和原理进行一些介绍. Java序列化算法透析 Serialization(序列化)是一种将对象以一连串的字节描述 ...
- Python与数据库[2] -> 关系对象映射/ORM[4] -> sqlalchemy 的显式 ORM 访问方式
sqlalchemy 的显式 ORM 访问方式 对于sqlalchemy,可以利用一种显式的ORM方式进行访问,这种方式无需依赖声明层,而是显式地进行操作.还有一种访问方式为声明层 ORM 访问方式. ...
- 以最简单的方式了解--Github
大概是从寒假的时候开始正式的赚取github,从github上面学习一些开源的文档,我记得我注册github账号到现在已经9个月了,但只有最近的2个月才发现github这个新世界,写这篇文章是为了刚入 ...
- [Usaco2010 Feb]Chocolate Buying
题目描述 贝西和其他奶牛们都喜欢巧克力,所以约翰准备买一些送给她们.奶牛巧克力专卖店里 有N种巧克力,每种巧克力的数量都是无限多的.每头奶牛只喜欢一种巧克力,调查显示, 有Ci头奶牛喜欢第i种 ...
- 【视频】Linux高级程序设计01.3命令行选项及参数
[课程笔记] [命令行参数] 选项:-l -a -i 参数:-l /home main 函数形式: int main(int argc, char *argv[]) main函数是有参数的,而且有返回 ...