Charles ios抓包

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Charles ios抓包相关的知识,希望对你有一定的参考价值。

参考技术A 本地开发项目的时候,我们可以通过谷歌浏览器的debug模式来看request以及response的数据,但是如果我们开发移动端真机项目呢?或者真机线上出现问题如何抓取数据查看接口入参和出参呢?这就需要用到“抓包”
抓包就是通过工具抓取应用的接口数据然后通过分析数据得出问题结论的一种常用的工作方法。下面简述一下在ios上面安装Charles并且实现抓包的过程,抓取范围包括web/APP内嵌web/小程序原生/小程序内嵌web等

【1】获取PC的IP地址和端口
在Charles菜单栏 -> Help -> Local IP Address中可以查看PC的IP地址。
一般Charles端口是默认的8888,可以从Charles菜单栏 -> Proxy -> Proxy Settings查看

【2】配置iPhone代理
设置 -> 无线局域网 -> 局域网信息(i) -> 配置代理 -> 手动

在配置iPhone代理完毕后,就可以通过Structure或者Sequence窗口预览HTTP请求的数据了。但由于HTTPS请求被加密过,预览请求时只能预览到乱码数据。要预览到HTTPS请求的数据明文,需要PC和iPhone安装证书授权。
【1】PC安装证书
在Charles菜单栏 -> Help -> SSL Proxying -> Install Charles Root Certificate中可以为PC安装证书

这样,就可以使用Charles中抓包iPhone发出的HTTPS请求并预览明文数据了。
【3】 启动抓包SSL权限
在Charles菜单栏 -> Proxy -> SSL Proxying Settings中勾选Enable SSL Proxying,然后在Locations中添加需要抓包的Host和Port即可。或者直接写*端口写443图示如下:

可以抓取对应添加的域名的Https的接口的数据

ios 抓包工具 ios青花瓷charles


iOS_青花瓷Charles抓包,ios青花瓷charles

使用青花瓷Charles抓取手机端的网络请求:
第一步,下载安装并打开Charles技术分享

第二步,去掉菜单【Proxy】以下的【Mac OSX Proxy】和【Mozilla Firefox Proxy前面的"勾"

技术分享

第三步,让手机和电脑处在同一个局域网(连同一个Wifi)

技术分享

第四步,打开手机的设置(Setting),选择(无线局域网),点击所连的网络,滑动到最下方的【HTTP代理】,选择中间的手动,输入server的IP:【就是电脑的IP】port:8888

技术分享

第五步,回到电脑,点击Charles的【Start Recording】

第六步,手机打开app应用,或者浏览器訪问网络,就能够被抓包了,尤其是返回JSON数据

技术分享






以上是关于Charles ios抓包的主要内容,如果未能解决你的问题,请参考以下文章

Charles进行HTTPS抓包(iOS为例)

ios 抓包工具 ios青花瓷charles

iOS开发抓包工具之Charles使用

iOS_青花瓷Charles抓包

charles抓包工具

Charles抓包(iOS的http/https请求)