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. 使用 FRP 反向代理实现 Windows 远程连接

    互联网普及率的日渐攀升与 IPv4 资源的持续减少,现在大部分家庭宽带都不会分配公网 IP ,这使一些网络应用的实现多了些困难,像个人的 NAS 和一些智能家居设备.对于分配公网 IP ,各地运营商的 ...

  2. 学习python第三天数据库day2

    day01回顾: 数据库: 定义:存储数据的仓库(database,简称db) 常用的数据库对象有哪些? 1).数据表(table) ***** 2).视图(view) 3).索引(index) 4) ...

  3. mysql报错:/usr/sbin/mysqld:unknown variable 'default-character-set=utf8'

    修改mysql的字符集时,为了将默认字符集设置为utf-8,便将/etc/my.cnf下[mysqld]加了一行 default-character-set=utf8, 但是在下次启动系统的时候,my ...

  4. c++——深拷贝和浅拷贝

    深拷贝和浅拷贝 默认复制构造函数可以完成对象的数据成员值简单的复制 对象的数据资源是由指针指示的堆时,默认复制构造函数仅作指针值复制 1浅拷贝问题 1.c++默认的拷贝构造函数 2.=号操作符 都是浅 ...

  5. 使用Navicat for Oracle工具连接oracle

    使用Navicat for Oracle工具连接oracle的 这是一款oracle的客户端的图形化管理和开发工具,对于许多的数据库都有支持.之前用过 Navicat for sqlserver,感觉 ...

  6. 30秒搞定String面试

    Java 语言中,无论新菜鸟,还是老司机,真正了解String内存的很少.关于String 的试题,花样很多.== 在什么情况下是true,什么情况是false.我总结出如下3点让你彻底结束对Stri ...

  7. 各国货币json文件

    [ {"countryname":"","name":"请选择","currency":" ...

  8. Linux学习笔记(第十章)

    vim程序编辑器 vim特点: vim三种模式: 一般模式:打开文档就直接进入编辑模式 -可进行删除,复制等,无法直接编辑文档 编辑模式:按下[i,I,o,O,A,R,r]等字母才会进入编辑模式,按E ...

  9. vue实现菜单切换

    vue实现菜单切换,点击菜单导航切换不同的内容以及为当前点击的选项添加样式,或者组件. method里: css: html代码: <nav> <ul> <li> ...

  10. Dynamics 365 可编辑子网格的字段禁用不可编辑

    在365中引入了subgrid的行可编辑,那随之带来的一个问题就是,在主表单禁用的状态下,如何禁用行编辑呢,这里就用到了subgrid的OnRecordSelect方法. 代码很简单,   我这里是禁 ...