Charles版本:4.0.2

一、开始


连接方式

  • 方法一:电脑和手机连接同一个wifi
  • 方法二:电脑使用网线连接网络,手机通过USB连接电脑

二、过滤网络请求


1.简单过滤

在Sequence模式下,就可以看到Filter,输入要过滤的关键字即可。

2.长期特定的网络封包

路径:Proxy->Recording Settings->Include→Add

在编辑框中填入要封的网络请求

3.关注特定的网络请求

在想要特定关注的网络请求那行,右键勾选"Focus"即可

三、抓取手机网络包


前提:手机,电脑连结的是通一个wifi网络

在菜单栏上选择 Proxy->Proxy Settings,填入代理端口 8888,并勾上 “Enable transparent HTTP proxying” 即完成了代理

查看电脑IP地址

在手机wifi网络中添加代理,输入电脑IP和charles的端口号 8888

抓HTTPS包

1.Mac安装SSL证书

在Help→SSL Proxying→Install....

选择后,就会出现证书下载,下载成功后会电脑”钥匙串访问“中看见(这里我已经安装并信任过了),然后双击下载的证书,勾选信任即可。

2.手机安装SSL证书

在SSL Proxying中勾选Install ...Mobile Device 会弹出一个框,用手机(处于代理状态下)登陆指定的url下载证书即可。

这时候你抓https的时候还是发现不行,乱码加unknown(如下图)

这时候我们还需要一步操作,就是将想要抓的https加入到SSL代理中,这样才能被Charles识别并解析

选择我们要抓的请求,右键选择"Enable SSL Proxying"

这时我们发现不再乱码和unknown了

四、网络限速


开发中常备限速,通常对于Chrome我们可以使用浏览器中的"Network中Online修改",下拉还有3G等设置。

但是通过代理我们可以做的更全更多

在"Proxy→Throttle Settings"中,我们可以给所有的网络限速,也可以通过勾选"Only for selected hosts"限制指定的请求速度

五、修改网络请求内容


选中一条网络请求,然后右键选择"Compose",就会出现上图下半部分的框,可以修改几乎任何你可以想到的请求参数,点击"Execute"执行即可

六、修改服务器返回的内容


1.Map Remote(Tools→Map Remote Settings)

将网络响应定向至另外一个网络服务,从而达到修改返回内容的目的

2.Map Local(Tools->Map Local Settings)

将网络响应定向至本地文件,从而达到修改返回内容的目的

3.Breakpoints替换返回内容(右键->Breakpoints)

通过名称也可以看的出来,这个类似于一种断点的功能,代理会在发送请求的时候拦截并断点网络请求,这就为我们修改网络信息提供了便利。

可以编辑请求的参数和返回的参数。

七、反向代理


反向代理(Proxy→Reverse Proxies Settings)也是一个常用的功能,特别是对于本地开发且需要域名的情况下

这个截图的意思是 将本地 57689端口映射到www.os.com域名的80端口

Charles从入门到放弃的更多相关文章

  1. CYQ.Data 从入门到放弃ORM系列:开篇:自动化框架编程思维

    前言: 随着CYQ.Data 开始回归免费使用之后,发现用户的情绪越来越激动,为了保持这持续的激动性,让我有了开源的念头. 同时,由于框架经过这5-6年来的不断演进,以前发的早期教程已经太落后了,包括 ...

  2. [精品书单] C#/.NET 学习之路——从入门到放弃

    C#/.NET 学习之路--从入门到放弃 此系列只包含 C#/CLR 学习,不包含应用框架(ASP.NET , WPF , WCF 等)及架构设计学习书籍和资料. C# 入门 <C# 本质论&g ...

  3. OpenStack从入门到放弃

    OpenStack从入门到放弃 目录: 为何选择云计算/云计算之前遇到的问题 什么是云计算 云服务模式 云应用形式 传统应用与云感知应用 openstack及其相关组件介绍 flat/vlan/gre ...

  4. Charles 从入门到精通

    特别说明:原文来自唐巧大神的博客 http://blog.devtang.com/2015/11/14/charles-introduction/ Charles 从入门到精通 文章目录 1. 目录及 ...

  5. 绕过校园网的共享限制 win10搭建VPN服务器实现--从入门到放弃

    一.开篇立论= =.. 上次说到博主在电脑上搭建了代理服务器来绕过天翼客户端的共享限制,然而经过实际测试还不够完美,所以本着生命不息,折腾不止的精神,我又开始研究搭建vpn服务器= =... (上次的 ...

  6. 《区块链:从入门到放弃》之obc安装步骤

    obc安装步骤 朋友们可能会好奇,厨师不研究菜谱怎么改研究兵法了,哈哈,我原本是app出身,最近被安排去预研区块链和比特币技术,2个月下来,颇有斩获.期间得到IBM的CC同学指导我一步一步安装obc的 ...

  7. win10搭建代理服务器实现绕过校园网的共享限制--从入门到放弃

    博主所在学校特别坑爹,校园网被电信一家垄断了,而且最恶心的还是电信要求一条网线只能供一台电脑上网,不许接路由器共享网络= =- (还有电信2M价格是380+每年,20m是500每年,而且网速都很慢= ...

  8. WPF从入门到放弃系列第二章 XAML

    本文是作者学习WPF从入门到放弃过程中的一些总结,主要内容都是对学习过程中拜读的文章的整理归纳. 参考资料 XAML 概述 (WPF):https://msdn.microsoft.com/zh-cn ...

  9. Charles从入门到精通

    Charles 从入门到精通 发表于 2015-11-14 12:00 文章目录 1. 目录 2. 简介 3. 安装 Charles 4. 将 Charles 设置成系统代理 5. Charles 主 ...

随机推荐

  1. python实例编写(4)--js,滚动条,cookie,验证码,获取特定属性的元素,实现原理

    一.调用js 执行方法:execute_script(script,*args) 场景一:在页面上直接执行调用js 场景二:在定位的某个元素上执行调用js 如:掩藏文字(提示插件 tooltip设置淡 ...

  2. 启动PHPstudy提醒80、3306端口被占用

    端口占用会出现如下提醒 解决办法: 进入dos窗口:快捷键win+R,然后输入cmd 在dos窗口中输入命令:netstat   -ano(查找各端口所在进程的PID) 找到80和3306的程序PID ...

  3. 在java中使用MongoDB数据库

    Java 安装 要想在 Java 程序中使用 MongoDB,需要先确定是否安装了 MongoDB JDBC 驱动,并且要在机器上安装了 Java.查看 Java 教程来确保在机器上安装好 Java. ...

  4. React——组件的生命周期函数

    每一个组件都有一些生命周期函数. 当组件实例被创建并且会插入到DOM中,下面这些函数会被调用 constructor componentWillMount render componentDidMou ...

  5. CenOs 部署记录

    1.安装APache.即 httpd 2.需要将80端口添加进iptable.外网才能访问.命令:iptables -I INPUT -p TCP --dport 80 -j ACCEPT

  6. Linux 启动详解之init

    1.init初探 init是Linux系统操作中不可缺少的程序之一.init进程,它是一个由内核启动的用户级进程,然后由它来启动后面的任务,包括多用户环境,网络等. 内核会在过去曾使用过init的几个 ...

  7. JSP入门 生命周期

    我们之前使用的都是javax.servlet.http.HttpServlet,这个类实现了javax.servlet.Servlet接口,而这个接口中定义的三个方法是所有servlet都必须实现的. ...

  8. 简单Elixir游戏服务器-安装Elixir

    用WebInstaller 安装半天也没下载成功文件. 改成直接下载erlang 和 elixir 预编译包了. 安装很简单,最后设置好环境变量. cmd 执行 elixir -v 最后顺便下载了个g ...

  9. Socket简单实现数据交互及上传

    声明:本文为原创,如需转载请说明出处:http://www.cnblogs.com/gudu1/p/7669175.html 首先为什么要写这个呢?因为在几个月之前我还使用Socket做一个小项目,而 ...

  10. SQL升级Oracle挖的Null坑,你懂的!

    最近公司做系统数据库升级,主要由原来的SQL数据库升级Oracle数据库,对于拥有千万级数据库的实用系统来说,迁移不是件容易的时,光数据同步就需要很久,更别说要修改升级原来的SQL库使用的存储过程和视 ...