charles几个常用功能
 
1,ios 抓包https网页:(如未配置,会显示unknown)
第一步是:给手机安装SSL证书
  • 手机和电脑在同一wifi下,手机wifi配置http代理,ip是电脑ip,端口一般默认8888
  • 安装SSL证书到手机,Help -> SSL Proxying -> Install Charles Root Certificate on a Mobile Device
  • 在手机上输入弹窗提示网址后,下载安装证书
如果是ios 10以上,需要到通用-关于手机-证书信任证书
第二步:charles SSL Proxying 增加你想要抓的网址
  • charles,Proxy -> SSL Proxying Settings
  • 点击add: host(写你要抓的网址url);端口443
 
两步做完之后手机再次发起请求,charles已经能看到https网页的接口数据了
 
2,模拟弱网
Proxy--->Throttle Settings
勾选Enable Throttling后,在Throttle Configuration设置弱网的参数
如果不对具体的弱网参数有要求,直接点击ok就可以了
面板上的小乌龟图标也可以开启或者关闭 Throtting
(衍生:弱网测试charles配置是一种方法,ios同时自带了弱网测试,开发者选项打开情况下,设置-开发者选项 > Network Link Conditioner 入口,系统已经内置常见网络配置,也可以增加自定义配置。)
 
3,设置断点,修改数据(比如你想要更改某个接口的request或者reponse的某个字段)
点击想要操作的接口,右键勾选 Breakpoints
从客户端再次请求该接口,charles自动跳转到新的session
点击 Edit Request ,Form视图下,可以更改客户端的传参,修改后点击Execute即可执行,第一次只能看到传参并更改,点击执行后可以看到response,此时可以更改返回参数(json模式查看)
更改之后再次点击Execute,就可以看到更改后的参数
 
4,接第三点,如果我想一直存储这个修改后的接口数据,而不是每次都要经过断点呢?——可以用Map Local
Map Local是将指定的网络请求重定向本地文件上
接上,点击更改后返回的request/reponse内容,右键save request/response保存到本地文件夹中
再次点击你要修改的接口,右键点击Map Local,在Map to下的choose里选择刚刚保存的文件
之后再在客户端重新请求接口,就可以发现客户端显示的就是刚刚你修改后的内容
那么如果关闭Map local ,恢复正常请求呢,在 Tools-Map Local 里把enable勾选去掉,或者去掉你想要关闭的文件就可以了
 
5,压测:重复给服务器发起请求,简单测试服务器的并发处理能力
接口右键,repeat Advanced 
iteration 循环次数
concurrency 并发数
 
 
附注:
1,
网络环境
上/下行带宽(kbps)
2G
20/50
3G
330/2000
4G
40000/80000
wifi
33000/40000
2,
throttle [ˈθrɑ:tl] 喉咙;节流阀;
certificate [səˈtɪfɪkət] 证书
proxy [ˈprɑ:ksi] 代理服务器; 代表权;
iteration [ˌɪtəˈreʃən] 循环
concurrency [kən'kʌrənsɪ] 并发
 
3,
根据具体的需求,Charles提供了Map Remote、Map Local、及Rewrite功能,都可以达到修改服务器返回内容的目的,三种的区别分别是:
  1.Map Remote是将指定的网络请求重定向到另一个网址上
  2.Map Local是将指定的网络请求重定向本地文件上
  3.Rewrite是对网络请求进行一下正则替换

charles抓包https/模拟弱网/设置断点重定向/压测的更多相关文章

  1. Charles篡改请求,在手机上抓包,以及弱网设置

    篡改请求 可以测试各种异常 原理:clint->server正常是客户端发送请求到服务端,charles相当于一个拦截器,拦住客户端的请求,并进行修改,修改后再发送到server端 Server ...

  2. Charles抓包https

    Charles抓包https 灰灰是只小贱狗 2018.05.08 10:46 字数 762 阅读 7800评论 3喜欢 3 抓取HTTPS请求包,对数据进行排查检验 1.安装Charles 2.电脑 ...

  3. charles抓包https设置

    写在前面 https抓包的实现 (一)首先,电脑得装个证书 (二)然后,移动设备上安装证书 (三)最后,Charles添加SSL Proxying 写在前面 开发时,面对各种接口数据,绝大多数时间都会 ...

  4. Charles抓包https请求

    平时使用Charles抓包,http的请求一眼就看到具体的请求信息返回信息等,但是如果是https请求,则是出现<unknow>,如下图: 若想要抓取https请求,怎么办呢? 1.连接C ...

  5. fiddler抓包-7-C端弱网测试

    前言大家平时也会发现我们有时候在地铁.高铁.电梯等等某个时候网络信号比较差导致网络延迟较大,这时是否有友好提示呢?甚至有可能发生崩溃等等...所以我们是可以通过fiddler来对web.APP.PC客 ...

  6. Windows下Charles抓包https协议配置

    最近设置https协议对手机app抓包遇到一些问题,现在在这里记录下,以防以后遇到问题没有记录 1.从官网下载Charles的安装包 https://www.charlesproxy.com/down ...

  7. charles 抓包 https 证书

    1. 概述 环境:这里是windows8 和 android (参考了ios环境的博客) 手机app点击发出http及https的请求,之前抓包都有请求的相关内容展示,这次没有,原来之前的一直抓的是h ...

  8. charles 安装使用教程及弱网设置

    1.安装jdk环境 2.下载charles 3.打开直接使用 4.手机端安装相关证书 5.手机端网络设置代理 6.分析查看数据 点击sequane中的值查看app中的数据返回与请求值.   charl ...

  9. 【接口工具】mac环境下使用Charles抓包Https请求

    Charles支持针对Https包解析.具体安装导航请参考“[接口工具]接口抓包工具之Charles” 操作流程 电脑安装证书: Help-SSL Proxying-Install Charles R ...

随机推荐

  1. like a virgin

    like a virgin 编辑 <Like a Virgin>是美国歌手麦当娜·西科尼的第二张个人专辑,已于1984年11月12日由华纳唱片旗下发行. 1985年,Like a Virg ...

  2. for/while 循环全部执行完,, 中途不会停下!!中途不会停下!!中途不会停下!!! 中途不会停下!!!!!

    对于这样一个在for 里面的, 他会从开始到最后走走一遍,然后再回到开始, 而不是在里面有两个操作,全部操作完第一个再往下走, 这个和我的学习方法似乎一样,真的要全局来一遍,再从新来一遍回顾问题 下面 ...

  3. 【转载】Java 集合框架

    http://wangkuiwu.github.io/2012/02/03/collection-03-arraylist/ 网上比较全的Java集合框架教程. 注:transient是Java语言的 ...

  4. js数组去重的方法(转)

    JS数组去重的几种常见方法 一.简单的去重方法 // 最简单数组去重法 /* * 新建一新数组,遍历传入数组,值不在新数组就push进该新数组中 * IE8以下不支持数组的indexOf方法 * */ ...

  5. Android 高级UI设计笔记23:Android 夜间模式之 两种常用方法(降低屏幕亮度+替换theme)

    1. 夜间模式 所谓的夜间模式,就是能够根据不同的设定,呈现不同风格的界面给用户,而且晚上看着不伤眼睛.特别是一些新闻类App实现夜间模式是非常人性化的,增强用户体验. 2. 我根据网上的资料 以及自 ...

  6. Nginx变量.md

    ngx_http_core_module ngx_http_core_module模块支持名称与Apache服务器变量匹配的嵌入式变量. 首先,这些是表示客户请求头字段的变量,例如$ http_use ...

  7. net mvc中实现记录用户登录信息(记住登录效果)

    现记录用户登录信息(记住登录效果) 本文讲述了使用cookies实现网站记住登录效果,效果如下: 主要实现方法,当用户选择记住登录时建立cookies保存用户名和用户密码,当用户登录不选择记住登录时, ...

  8. npm发布插件步骤

    开发好一个插件后,要想让其他人也能使用该插件需要将插件发布到npm上,具体步骤如下: 1.添加npm用户: npm adduser Username: your name Password: your ...

  9. Metapackage包

    Metapackage(功能包集)是把一些相近的功能模块. 软件包放到一起. ROS里常见的Metapacakge有: 2.Metapackage写法 CMakeLists.txt 写法如下: cma ...

  10. jenkins -Djava.awt.headless=true Linux下java.awt.HeadlessException的解决办法

    修改 linux  apache-tomcat-7.0.56/bin \catalina.sh文件 在所有类似以下代码大约有七八处具体自己去看:    "$_RUNJAVA" $J ...