热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Charles工具使用指南与心得

本文详细介绍了Charles工具的下载、安装、配置及使用方法,特别针对HTTP和HTTPS协议的数据抓取进行了说明。

1. 下载 Charles

访问 Charles 官方网站 (http://www.charlesproxy.com/download/),根据您的操作系统选择合适的版本进行下载并安装。官方版本为收费软件,预算有限的用户可考虑使用破解版(自行搜索)。

2. 配置代理

确保手机和电脑连接在同一网络下,使用同一台路由器。

1) 查看默认端口:进入 Proxy > Proxy Settings 页面,可以看到 HTTP 代理的默认端口为 8888,无需修改,只需记录该值。

2) 查看当前电脑的 IP 地址:例如,我的 IP 地址为 192.168.9.129。

3) 设置手机代理:根据记录的 IP 地址和端口,在手机上进行代理设置。以下是使用 Genymotion 模拟器的设置步骤,真机设置方法相同。

完成上述步骤后,您将能够捕获 HTTP 请求的数据,如下图所示:

接下来介绍如何捕获 HTTPS 协议的数据包,如果您没有此需求,可跳过以下内容。

3. 配置 Charles SSL 代理

进入 Proxy > SSL Proxy Settings 页面,按以下步骤操作:

1) 勾选 Enable SSL Proxying 复选框。

2) 添加您希望捕获的域名及其端口(默认为 443)。只有填写了这些信息后,才能看到相应的请求和响应。

设置完成后,效果如下图所示:

4. 手机安装 SSL 证书

1) 在 Charles 菜单栏中选择 Help > SSL Proxying > Install Charles Root Certificate on a Mobile Device or Remote Browser...,会弹出提示框,如下图所示:

2) 使用 Android 自带浏览器访问 http://charlesproxy.com/getssl 下载证书,并按照提示安装。

完成上述步骤后,您可以成功捕获 HTTPS 数据包。如有任何问题,请留言。以下是捕获的数据包截图:

为了实现更精细的抓包控制,您可以在 Charles 的菜单栏选择 Proxy > Recording Settings,然后在 Include 栏中添加需要监控的协议、主机地址和端口号,以达到过滤目的。如下图所示:


推荐阅读
  • Android与JUnit集成测试实践
    本文探讨了如何在Android项目中集成JUnit进行单元测试,并详细介绍了修改AndroidManifest.xml文件以支持测试的方法。 ... [详细]
  • 本文介绍了SIP(Session Initiation Protocol,会话发起协议)的基本概念、功能、消息格式及其实现机制。SIP是一种在IP网络上用于建立、管理和终止多媒体通信会话的应用层协议。 ... [详细]
  • 本文详细介绍了在Windows系统中如何配置Nginx以实现高效的缓存加速功能,包括关键的配置文件设置和示例代码。 ... [详细]
  • Web动态服务器Python基本实现
    Web动态服务器Python基本实现 ... [详细]
  • 理解浏览器历史记录(2)hashchange、pushState
    阅读目录1.hashchange2.pushState本文也是一篇基础文章。继上文之后,本打算去研究pushState,偶然在一些信息中发现了锚点变 ... [详细]
  • Jupyter Notebook多语言环境搭建指南
    本文详细介绍了如何在Linux环境下为Jupyter Notebook配置Python、Python3、R及Go四种编程语言的环境,包括必要的软件安装和配置步骤。 ... [详细]
  • 本文详细介绍了在Linux操作系统上安装和部署MySQL数据库的过程,包括必要的环境准备、安装步骤、配置优化及安全设置等内容。 ... [详细]
  • 深入理解:AJAX学习指南
    本文详细探讨了AJAX的基本概念、工作原理及其在现代Web开发中的应用,旨在为初学者提供全面的学习资料。 ... [详细]
  • 本题要求计算一组正整数的最小公倍数(LCM)。输入包括多组测试数据,每组数据首先给出一个正整数n,随后是n个正整数。 ... [详细]
  • linux网络子系统分析(二)—— 协议栈分层框架的建立
    目录一、综述二、INET的初始化2.1INET接口注册2.2抽象实体的建立2.3代码细节分析2.3.1socket参数三、其他协议3.1PF_PACKET3.2P ... [详细]
  • 构建Elasticsearch环境与课程索引
    本章节详细介绍了如何在开发环境中搭建Elasticsearch (ES) 环境,包括安装、启动服务端以及创建索引和映射的具体步骤。对于旧版ES环境的清理方法也进行了说明。 ... [详细]
  • MySQL Administrator: 监控与管理工具
    本文介绍了 MySQL Administrator 的主要功能,包括图形化监控 MySQL 服务器的实时状态、连接健康度、内存健康度以及如何创建自定义的健康图表。此外,还详细解释了状态变量和系统变量的管理。 ... [详细]
  • 本文详细介绍了Oracle 11g中的创建表空间的方法,以及如何设置客户端和服务端的基本配置,包括用户管理、环境变量配置等。 ... [详细]
  • CentOS下ProFTPD的安装与配置指南
    本文详细介绍在CentOS操作系统上安装和配置ProFTPD服务的方法,包括基本配置、安全设置及高级功能的启用。 ... [详细]
  • 如何在PHP中安装Xdebug扩展
    本文介绍了如何从PECL下载并编译安装Xdebug扩展,以及如何配置PHP和PHPStorm以启用调试功能。 ... [详细]
author-avatar
1510193264a
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有