【米家】Charles 抓包调试

抓包调试

扩展程序SDK 中的接口均通过网络与小米IoT 平台交互,为了方便开发者在开发扩展程序的过程中,快速定位并排查问题,开发者在开发以及调试的过程中,使用抓包工具Charles,分析问题出现的原因。

抓包步骤

①下载并安装证书

  • 通过电脑向手机传输证书:Help->SSL Proxying->Save Charles Root Certificate…,获取证书后,请将证书传输至手机

  • 通过手机浏览器向手机传输证书:Help->SSL Proxying->Install Charles Root Certificate
    on a Mobile Device or Remote Browser,设置手机WI-FI 代理,如主机(IP)为10.224.206.28,端口为8888,请在设置好网络后发起一次网络请求,并在Charles 上确认Allow,在手机浏览器上输入chls.pro/ssl,下载证书

  • 小米手机系统浏览器下载不了,下个第三方的浏览器即可

  • 【小米手机需要设置一个屏幕数字密码;市场下一个其它的浏览器(不能用系统自带的浏览器)】

② 安装证书

  • Android:进入手机“设置”-“WLAN”-“高级设置”-“安装证书”,找到下载的证书并安装,证书命名可为Charles,“凭据用途”请选择"VPN和应用"

  • iOS:“设置”-“通用”-“描述文件与设备管理” 找到并安装证书,在“关于本机”-“证书信任设置”中打开证书的开关

  • 小米手机设置一个屏幕密码,比如 111111

③在米家APP(DB 包)中打开明文传输开关

  • Android:请下载DB包,并登录开发者账号,在“我的”-“开发者选项”-“开发者模式”-“其他设置”中,打开“是否强制使用明文传输数据”

  • iOS:请下载DB包,并登录开发者账号,在“我的”-“开发者选项”-“开发者模式”-“其他设置”中,打开“是否强制使用明文传输数据”

  • 打开“强制使用明文传输数据”后,如果仍无法看到明文数据,请退出米家APP(DB 包) 并重新进入

④查看接口请求与返回的数据

在Charle 中选中某个接口,在右侧选择“Content”-“Form”查看接口请求与返回的数据, https://api.io.mi.com/app(v2)

说明

  • 使用Charles抓包前,请确保您的手机和电脑处于同一局域网下(即网关和子网掩码需一致),此外,请确保已正确设置Wi-Fi 代理;

  • 抓包时请打开Charles并确认“Allow”,有关Charles的使用方法请参见官方文档:Welcome to Charles,如果看不懂英文教程,请找您企业组内的其他同事翻译,或使用Google 翻译;

  • Charles 一次性记录抓包数据时间过长时,会使APP的网络请求变慢,所以建议经常清理抓包记录和不必要时关闭抓包。

卸载证书

网上太多教程都是教安装证书的,却没多少说过如何卸载不需要的CA证书。所以这里说一下,我用的设备是华为荣耀8,应该区别不大。
手机终端打开设置 --> 安全和隐私 --> 更多安全设置 --> 用户凭据 --> 删除之前安装的凭据;
手机终端打开设置 --> 安全和隐私 --> 更多安全设置 --> 受信任的凭据 --> 用户 -->删除之前安装的凭据。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Crazy程序猿2020

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值