Charles抓包

charles抓包

Charles是一个HTTP代理服务器,HTTP监视器,反转代理服务器,当浏览器连接Charles的代理访问互联网时,Charles可以监控浏览器发送和接收的所有数据。它允许一个开发者查看所有连接互联网的HTTP通信,这些包括request, response和HTTP headers (包含cookies与caching信息)。

Charles主要功能:

  • 支持SSL代理。可以截取分析SSL的请求。
  • 支持流量控制。可以模拟慢速网络以及等待时间(latency)较长的请求。
  • 支持AJAX调试。可以自动将json或xml数据格式化,方便查看。
  • 支持AMF调试。可以将Flash Remoting 或 Flex Remoting信息格式化,方便查看。
  • 支持重发网络请求,方便后端调试。
  • 支持修改网络请求参数。
  • 支持网络请求的截获并动态修改。
  • 检查HTML,CSS和RSS内容是否符合W3C标准。

web抓包

启动Charles会自动与浏览器设置成代理,不需要进行过多的设置。

如何抓取https包:

1.点击顶部菜单栏【Help】-->选择【SSL Proxying】,点击【install Charles Root Certificate 】安装Charles根证书即可

2.点击【Proxy】-->【SSL Proxying Settings】

在弹出选项卡中,勾选【Enable SSL Proxying】点击【add】,在Host输入【*】表示接收任何主机,在Prot输入【443】最后点击【ok】保存

如何监听特定网站

方法一:直接在会话窗口左下角Filter中过滤特定域名

方法二:在 Charles 的菜单栏选择 "Proxy"->"Recording Settings",

然后选择 Include 栏,选择添加一个项目,然后填入需要监控的协议,主机地址,端口号。

通常情况下,我们使用方法一做封包过滤,方法二做一些唯一的域名抓包。

方法三:设置焦点过滤

在会话窗口选择一条记录,右击域名------Focus------可针对该域名以外的其他域名都进行过滤,只展示该域名的请求数据。

App抓包

HTTP

Charles抓包不仅仅可以抓取来在电脑端的HTTP请求,也能够抓取来自App发出的HTTP请求,但是手机抓包需要在电脑端配置下,并且同时需要手机和电脑在同一网络下。

电脑端配置:

1.启动安装好的Charles抓包工具;

2.点击【Help】-->【local IP Address】获取下ip地址,也可以直接通过电脑自带的CMD命令来获取电脑IP【ipconfig】

3.点击【Proxy】-->【Proxy Settings】我们在设置下端口号,默认是8888,根据自己情况合理配置;

iOS

前提:chalres电脑本地证书安装

1.打开手机的设置页面;

2.选择【无线局域网】;

3.iOS点击连接的WIFI后面的 i

4.点击HTTP代理【配置代理】-->【手动】;

5.输入本机【IP地址】以及端口号【】;

6.点击【存储】

抓HTTPS包

安装手机端HTTPS证书。

1.点击顶部菜单栏【Help】-->选择【SSL Proxying】,点击【install Charles Root Certificate】安装Charles根证书即可;

2.点击安装【Install Charles Root Certificate On a Mobile Device or Remote Browser】在移动设备上或远程浏览器安装证书即可;(这里和上面安装一样)

charlesproxy.com/getssl

下载-安装,安装时信任此证书(前往手机-设置-通用-关于本机-证书信任设置,查看)。

Android

前提:chalres电脑本地证书安装

1.打开手机的设置页面;

2.选择【无线局域网】;

3.长按WLAN,修改网络

4.代理-手动

5.输入本机【IP地址】以及端口号【】;

参考文档:手把手教你Charles抓包工具使用-CSDN博客

相关推荐
赵得C12 天前
AJAX拦截器失效排查指南:当你的beforeSend有效但error/complete沉默时
前端·ajax·okhttp
粤M温同学16 天前
Android OkHttp 框架超时设置详解
android·okhttp
粤M温同学16 天前
Android 使用OkHttp 下载文件失败问题定位和修复
okhttp
CUIYD_198917 天前
Ajax 核心知识点全面总结
前端·ajax·okhttp
weixin_4383354017 天前
Spring RestTemplate + MultiValueMap vs OkHttp 多值参数的处理
java·spring·okhttp
网络点点滴19 天前
上传一个菜谱-最后部分(项目完结)
android·okhttp
农业工作者19 天前
Android:使用OkHttp
android·okhttp
androidwork20 天前
Android 中 OkHttp 的自定义 Interceptor 实现统一请求头添加
android·java·okhttp·kotlin
一只会跑会跳会发疯的猴子21 天前
ajax访问阿里云天气接口,获取7天天气
前端·ajax·okhttp