Charles抓包工具简单教程

Charles抓包工具简单教程为什么使用charles-windows在实际开发、测试中需要代理截取app的网络请求报文来快速定位问题,https双向认证的APP越来越多,fiddler在这方面并不好用。由于windows系统较多,编写此博客作为windows版的使用指南,其中包含了一些简易的使用,安装hhtps证书抓包,常用的设置,以及弱网测试,下列都会详细讲解,内容为本人的测试经验,不足之处还望补充。所需材料·…

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

为什么使用 charles-windows

 

 

在实际开发、测试中需要代理截取app的网络请求报文来快速定位问题,https双向认证的APP越来越多,fiddler在这方面并不好用。由于windows系统较多,编写此博客作为windows版的使用指南,其中包含了一些简易的使用,安装https证书抓包,常用的设置,以及弱网测试,下列都会详细讲解,内容为本人的测试经验,不足之处还望补充~

 

 

 

所需材料

· Windows 系统电脑

· 手机 (android 或 ios ,本文以 ios 系统手机为例)

 

 

 

 

安装配置步骤

官网下载地址:
https://www.charlesproxy.com/download/

破解版的也很多,官网上的只可以免费试用30天

 

 

 

1、安装 charles 根证书

(先配置好https各个方面,以免后面在弄容易混淆)

 

1.1 电脑上:

proxy ——help弹出一个安装证书界面

Charles抓包工具简单教程

不要选择自动,选择第二项,进入下一步

 Charles抓包工具简单教程

 

这个除了不要勾选个人和不受信任的证书以外,都可勾选,记得要信任证书,方可抓取https的封包

 

 Charles抓包工具简单教程

 

 

1.2 手机上:

 

首先电脑要要设置端口8888

 Charles抓包工具简单教程

然后我们要查看IP地址,在手机上才可以添加ip地址和端口号:

 

点击Help—local IP addresses 

 Charles抓包工具简单教程

查看完成后点开当前所连接的WIFI,设置手动HTTP代理:要查看是否一致,检查一下

当前我的为10.156.0.8  那么我们在移动设备设置的时候同理,要要查看是否对应,确认后,点击保存

 Charles抓包工具简单教程

 

 

以上设定完成后,就可以charles中捕获手机请求了,第一次连接的时候charles会弹出确认提示框,选择 allow 就好了,后续可在 proxy -> access control settings 中进行管理:

 

 Charles抓包工具简单教程

 

虽然已经可以抓取移动设备的包了,但是https的还抓取不到,接下来要在目前使用的移动设备上安装证书

 Charles抓包工具简单教程

 

打开浏览器 输入该网址:chls.pro/ssl

 Charles抓包工具简单教程

(此处显示英文是因为当前移动设备系统语言为英文)

 

 

下一步—下载安装证书——点击‘下载’

 

 Charles抓包工具简单教程

此时已经安装成功,然后我们点击进入系统设置信任该证书  设置—通用—关于

 Charles抓包工具简单教程 底部进入后勾选该证书信任即可!

 

Ok,现在电脑和手机的都已经设置完毕,接下来我们设置捕捉https请求

 

 proxy -> SSL Proxy Settings 弹出一个 ssl代理设置界面

 Charles抓包工具简单教程

 接下来启用HTTPS捕捉,‘*’为通配符

 Charles抓包工具简单教程

 

 

 

接下来可以开始抓包啦!

 

 

2、常用的设置

 

 

2.1 抓取指定路径

 

抓起指定路径,这样在主页面就只显示你要显示的请求路径

 Charles抓包工具简单教程

 

2.2 页面简单描述

 

个人比较喜欢sequence,这个是按照请求发生的顺序来展示;

 Charles抓包工具简单教程

 

Structure 视图模式下,列表会按照域名来归类所有请求,选择适合自己的即可

 Charles抓包工具简单教程

 

 

 

3 模拟弱网

首先要确保移动端连接了Charles,可以正常抓包

 

 一款APP针对不同网络情况下都需要保证不会Crash,同时尽可能做到在弱网情况下也能达到功能正常使用,或者使用体验达到最佳。

 我们借助Charles工具做弱网的测试,或者模拟2G、3G的网络情况。

  

首先,打开Charles,在Throttle Settings中设置网络状况,比如:

 Charles抓包工具简单教程

 

 

 下图为基本参数,详情可以百度搜索上行下行网络具体设置,这里我设置自定义为‘10’‘30 ’仅供参考

Charles抓包工具简单教程

小乌龟为亮,成功

 Charles抓包工具简单教程

 

因为我是抓取APP的,我的路径为10.156.0.100  设置以后就可以模拟指定的APP,不会影响其他。

 

 

弱网参数 仅供参考:

PS:弱网、2G、3G建议的上下行速率如下,同时还可以控制丢包率的数据.

网络         上行         下行

弱网          10            30                           我用的是10 30

2G             15            50
 

3G            384          2800

 

内容大概就这些,简单易上手,希望各位多多指教~软件测试妹子一枚~还望越走越远cute.gifuploading.4e448015.gif转存失败重新上传取消可怜

 

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/131276.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • linux 开发板 ldd,Linux ldd命令

    linux 开发板 ldd,Linux ldd命令Linux下的lld命令的主要作用:用来查看程式运行所需的共享库,常用来解决程式因缺少某个库文件而不能运行的一些问题。ldd是list,dynamic,dependencies的缩写,列出动态库依赖关系。可以用ldd–help或者manldd来看其用法。可以用which命令找到ldd的位置:$whichldd/usr/bin/ldd使用ldd,往往在制作自己的发行版时经常需要判断某条命…

    2022年6月11日
  • 逻辑删除还是物理删除

    逻辑删除还是物理删除看到标题,有的童鞋心中暗想“数据删除有什么可提的呢?不就是执行个delete语句吗?有什么难的呀?”其实呢数据删除没有你想的这么简单,一般情况下公司会明确的要求数据只能逻辑删除,不能物理删除。那什么优势逻辑删除,什么又是物理删除呢?物理删除就是我们之前常用的DELETE、TRANCATE、DROP语句删除数据,不管你用哪种方式,都是将数据从硬盘上抹除,这样数据表的体积就变小了,数据的读写性能就提上去了。有个共识InnoDB引擎的数据表记录一旦超过2000万,它的读写性能就很差,我们用物理删除能缩小表

    2022年6月2日
  • laravel 学习相关笔记

    laravel 学习相关笔记

    2021年10月23日
  • 光栅化 (Rasterization)

    光栅化 (Rasterization)上一篇文章讨论了如何在多边形的某一点上分配光强度值,这里主要讨论如何为多边形确定实际的像素,即在栅格屏幕上的对应位置,这个过程称为光栅化(Rasterization)或者扫描转换(Scanconv

    2022年8月4日
  • HTML实用的网页代码大全[通俗易懂]

    HTML实用的网页代码大全[通俗易懂]【一】:符号<p>段落</p> <h>标题</h>(h1—h6) <br>:换行 <hr>:分割线 左右尖括号:<> &表示为:&amp "表示为:" 表格形式<table>

    2022年6月3日
  • accessors 作用_EasyExcel与@Accessors(chain = true)不兼容分析

    accessors 作用_EasyExcel与@Accessors(chain = true)不兼容分析EasyExcelEasyExcel是一个基于Java的简单、省内存的读写Excel的开源项目。在尽可能节约内存的情况下支持读写百M的Excel.github地址:https://github.com/alibaba/easyexcelAccessors@Accessors注解用来配置lombok如何产生和显示getters和setters的方法。public@interfaceAcce…

    2022年10月31日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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