1

首先需要在Mac上打开Charles,并启动代理,完成了一系列配置后,能正常监听流量了以后,再进行下面操作(配置电脑证书等).

PC端Charles设置,可以参考我另外一篇文章https://segmentfault.com/a/11...

监听iOS设备流量(信任https请求),安卓端与iOS类似,只不过安卓端下载证书后,需要去系统文件中打开证书安装并信任(IOS只有下载立即安装,如果下载完成没有安装,以后如果需要安装证书,只能重新下载)

  1. 打开Charles帮助, 查看移动端证书安装提示clipboard.png
  2. clipboard.png按照提示设置IOS WIFI代理.(IOS设备与电脑需要处于同一网络).上图红圈标红的内容是,我电脑在局域网的内网IP,8888是我电脑设置的代理监听端口.
  3. 如果有必要,修改步骤2红框中的端口clipboard.png
    Mac电脑Charles代理设置方式.
    clipboard.png
    上图中1是必选项,只有勾选了,才能启动代理.2是代理监听端口,默认8888
  4. 配置iOS设置代理(需要与电脑处于同一WIFI),服务器和端口就是步骤2红框中的内容
    clipboard.png
  5. 下载证书.
    在iOS上配置好WIFI代理后,使用Safari浏览器打开http://chls.pro/ssl ,浏览器会自动下载一个
    证书,安装即可.

    注意:只能用Safari浏览器打开才有用

    浏览器打开http://chls.pro/ssl 后的提示
    clipboard.png
    如果下载文件成功,点击允许,会跳转到该界面
    clipboard.png
    点击安装即可.安装成功会如下图所示
    clipboard.png

  6. 如果安装成功,在设置--> 通用 --> 描述文件 中会新增一个Charles Proxy的描述文件.
    前往 设置--> 通用 --> 关于本机--> 证书信任设置 里,将刚刚新增的Charles证书设置为启用状态,
    设置为启用后,应该如下图所示(开关选项会显示为绿色)
    clipboard.png
  7. 完成上面的步骤,iOS上的Charles代理https证书就设置完成啦.打开浏览器,随便打开个https网页,电脑端的记录就会显示详细内容了,而不会显示问号

疑难杂症:

  1. 问: 如果你移动端配置好以后,还是无法监听https流量
    答: 请你先确定,你是否能够监听移动端的http流量,如果http流量都无法监听,那么是你电脑Charles设置问题,与移动设备无关
  2. 问: iOS设备用浏览器打开http://chls.pro/ssl 后,手机没有弹出允许的窗口,而是直接让你保存下载文件,或者打开后无反应.
    答: 请先确认你手机电脑是否使用到是同一WIFI,并且保证你iOS中WIFI设置的代理是步骤2中的 >IP+端口.
    然后,再使用移动设备默认浏览器打开,iOS必须要用Safari浏览器打开
    如果你是使用Mac电脑,那么,你还需要检查你的电脑中是否安装有Charles证书,并且设置为始终信任.
    下图是我电脑的钥匙串系统证书列表
    clipboard.png

无趣
1.5k 声望17 粉丝

胸大有什么用,爽的是别人,又不是自己.