美文网首页前端从业人员技术贴
新手如何使用Charles调试移动端

新手如何使用Charles调试移动端

作者: Juan杨 | 来源:发表于2019-05-26 13:04 被阅读73次

    新手如何使用charles调试移动端

    大牛请绕道,下文是本人在工作中得到的一些经验,希望可以给小白菜们一些帮助!

    Charles是macOS上的最常用的抓包工具,今天来总结一下Charles的最新使用方法,主要是抓HTTPS包的使用方法。

    1. 准备工作

    安装JDK

    Charles由Java开发,请先安装好JDK(笔者JDK版本为1.8.0_91)。

    下载Charles

    官网下载地址,目前最新版本4.0.2支持macOS 10.7 - 10.12(笔者macOS版本为10.12.4)。

    关闭VPN/代理

    为了正常使用Charles,请关闭自己的VPN或者其他代理设置。

    2. Charles客户端配置

    安装好Charles后,在菜单栏勾选『Proxy -> macOS Proxy』,macOS系统HTTP/HTTPS代理将会被自动设置为本地代理,默认端口8888。

    Charles正常连接,代理则是自动设置

    访问HTTP数据链接,可以开始抓取HTTP包。

    图上状态为正常抓包

    3. 抓macOS应用程序包(HTTPS)

    在菜单栏选择 『Help -> SSL Proxying -> Install Charles Root Certificate』,会自动导入 Charles Proxy CA 证书并打开 Keychain Access,双击新导入的证书弹出证书信息页面,将 Secure Sockets Layer(SSL) 设置为Always Trust,关闭页面后弹出密码提示,输入密码更新系统信任设置。

    将此处设置为信任

    在菜单栏选择 『Proxy -> SSL Proxy Settings...』,在SSL Proxying选项卡中可以添加需要抓包的域名端口。

    这里可以自己设置,例:locallhost:8000

    或者直接在『Structure』列表中右击需要抓HTTPS包的地址,选择 Enable SSL Proxying,也可以添加到上述列表中。

    访问HTTPS数据链接,可以开始抓取HTTPS包。

    两指双击便可设置

    4. 抓iOS应用程序包

    在Mac上先打开Charles,确保iOS设备和Mac处于同一局域网内(可使用Mac创建热点分享给iOS设备)。

    设置iOS HTTP代理,打开iOS设备对应WIFI设置,添加代理IP地址(Mac的局域网地址)和端口号(8888)。

    终端获取服务器地址,端口号与图一同步

    Command + 空格键弹出 “聚焦” 搜索  “终端”

    图中192.168.1.101则是小编的ip

    也可以在Charles中从菜单栏『Help -> Local IP Address』获取

    在iOS设备上访问数据链接,Charles 弹出 Access Control 确认对话框,选择Allow,可以开始抓取HTTP包。

    上图为正常连接 利用google找到二维码扩展

    此时在程序中输入alert (" https://www.jianshu.com/u/7f57dc754743 ") , 刷新页面正常弹出alert,相当于调试台debugger

    参考资料

    Charles Documentation

    抓包工具 Charles 使用心得

    Mac平台下的抓包神器 —— Charles

    相关文章

      网友评论

        本文标题:新手如何使用Charles调试移动端

        本文链接:https://www.haomeiwen.com/subject/tymxtctx.html