iOS 开发笔记iOS学习笔记

Charles抓Http/Https、篡改请求数据

2018-07-19  本文已影响10人  编程的蚂蚁
Charles

一、Charles(青花瓷)介绍

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

二、Charles主要功能

三、安装Charles

可以直接去官网https://www.charlesproxy.com/下载,也可以在网上搜一下破解版本的。

官网下载
下载之后,安装即可。

四、配置Charles

1、首先确保你的手机和电脑在同一个WiFi下(关键)


电脑网络
手机网络

两者一定是在同一网络环境下
2、在手机上和电脑上安装描述文件
在Charles的Help菜单的SSL Proxying下选择如图选项


安装手机证书
然后电脑上会弹出一个提示框
手机安装证书提示框
这个时候,打开手机的网络设置,开始配置代理
手机配置代理

这里服务器填写手机安装证书提示框的IP地址,端口填写提示框里面的端口。

然后点击右上角的存储。打开手机上的Safari,输入提示框里面的网址:chls.pro/ssl,然后就会有一个提示框提示是否要配置描述文件,按照提示点击,最后把描述文件安装成功。 描述文件安装成功图.jpeg
记住,这只是安装,并没有信任证书,还要去设置一下信任。在设置->关于本机->证书信任设置路径下。如图:
证书信任设置
打开信任开关
此时,手机上的描述文件就安装完毕了
接着安装电脑的证书
屏幕快照 2018-07-19 下午2.22.43.png
点击如图选项,然后就会跳转到本地钥匙串,如果证书没有信任的话,双击一下证书,设置为始终信任即可。 设置为始终信任
至此,证书部分安装完毕。
打开Charles,进行Proxy Setting
Proxy Setting-1 Proxy Setting-2

这里使用默认的8888端口号
接着设置SSL Proxying Settings


SSL Proxying Settings-1
SSL Proxying Settings-2

Host填写一个*,代表通配符
Port填写:443端口
点击OK保存,至此所有的设置都做好了。

五、开始抓数据,抓一下手机百度的数据吧。

选中数据对应的接口,给该地址添加一个断点。然后手机再次下拉刷新数据,测试会停到这个断点的地方,此时你可以编辑请求的部分,如果不需要,直接点击下面的Execute按钮,测试数据加载过来了,选中Edit Response,找到你想更改的数据,进行编辑,编辑之后,点击下面的Execute按钮。


给目标地址添加断点 编辑返回数据

回到App查看变更结果


篡改数据之后的图

注意点:

之所以记录这个过程,是因为我之前只是使用Charles进行获取数据,辅助开发,并没有用到篡改数据的功能,这里记录一下,以便于学习。如有问题,可以在下方评论,共勉之。

上一篇 下一篇

猜你喜欢

热点阅读