HarmonyOS 鸿蒙Next中Charles抓包无法加载图片资源
HarmonyOS 鸿蒙Next中Charles抓包无法加载图片资源
Charles抓包无法加载图片资源
手机通过Charles抓包,此前配置好了抓包环境,目前在手机上一般的API接口请求是可以通过Charles抓包的,但所有的图片资源无法加载,下载图片时抓包在Charles中提示如下错误:
HTTP/1.1 200 Connection established
You may need to configure your browser or application to trust the Charles Root Certificate. See SSL Proxying in the Help menu.
在 SSL Proxying Setting中也选中了Enable SSL Proxying,且在Enable SSL Proxying的include中设置了*:443
以及 *:443
且同样的图片资源(如:44107803011466031893.png)直接在浏览器中打开的话,Charles里面能正常抓包且成功加载图片资源。仅仅在开发调式的App中无法加载。
以上问题,请问是在开发调式的App中还需要什么额外的设置吗?网络部分使用的是axios开源库。
更多关于HarmonyOS 鸿蒙Next中Charles抓包无法加载图片资源的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
-
可参考此文章查看证书路径配置:https://developer.huawei.com/consumer/cn/forum/topic/0203142784216125544?fid=0109140870620153026
-
建议重启手机后断开wif再重新连接时配置代理
-
可参考此操作步骤:
一、导出证书,点击 Help—>SSL Proxying—>Save Charles Root Certificate
(1) 导入证书到手机执行命令参考如下:
hdc file send charles.pem(pc上证书路径) /storage/media/100/local/files/Download(工程机指定路径)
(2) 连接工程机后执行命令启动证书安装界面
hdc shell aa start -a MainAbility -b com.ohos.certmanager
(3) 选择从存储设备安装,选择指定pem证书
二、安装Charles证书到系统可信目录,操作步骤:
点击 Help—>SSL Proxying—>Install Charles Root Certificate—>安装证书—>选择证书存储路径为:受信任的根证书颁发机构
三、设置代理操作步骤:
1)点击 Proxy—>SSL Proxy Settings—>在Include添加 : 和 *:443
2)点击 Proxy—>Proxy Settings—>勾选Enable transparent HTTP proxying
四、Wifi代理设置:
将手机与PC同一局域网下连接,手机连接WiFi时,点击代理设置为手动,修改设置代理IP,端口为Charles监听的端口,默认为8888,可在上一步Proxy Settings中查看和修改
五、应用抓取http包: App开发时,HTTP请求HttpRequestOptions参数设置,可参考文档
1)设置usingProxy为true,表示使用HTTP代理(该字段默认为false 不使用代理)
2)设置caPath(可根据环境使用设置,默认使用系统预设CA)
http参数设置可参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-http-V5
charles工具配置可参考博客:https://juejin.cn/post/6844904182588112904
更多关于HarmonyOS 鸿蒙Next中Charles抓包无法加载图片资源的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS鸿蒙Next中,Charles抓包无法加载图片资源可能是由于以下原因:
-
HTTPS证书问题:鸿蒙系统对HTTPS证书的验证较为严格,如果Charles的根证书未正确安装或未受信任,可能导致图片资源无法加载。确保Charles的根证书已正确安装并受信任。
-
网络配置问题:鸿蒙系统的网络配置可能与Charles的代理设置冲突,导致图片资源无法通过代理加载。检查设备的网络配置,确保代理设置正确。
-
应用层限制:部分应用可能对网络请求进行了限制,阻止通过代理加载图片资源。检查应用的网络请求策略,确认是否有相关限制。
-
系统权限问题:鸿蒙系统对应用的网络权限有严格管理,如果应用未获得必要的网络权限,可能导致图片资源无法加载。检查应用权限设置,确保网络权限已开启。
-
协议兼容性问题:鸿蒙系统可能对某些网络协议的支持与Charles不完全兼容,导致图片资源无法加载。检查使用的网络协议,确认兼容性。
解决这些问题需要逐一排查,确保网络配置、证书安装、应用权限等设置正确无误。
在HarmonyOS鸿蒙Next中,使用Charles抓包时无法加载图片资源,可能原因及解决方法如下:
-
HTTPS证书问题:确保Charles的根证书已正确安装并信任。在设备上安装Charles证书,并在设置中启用信任。
-
网络配置:检查设备的代理设置,确保Charles的代理地址和端口正确配置。
-
应用限制:部分应用可能禁止代理抓包,尝试其他应用或调整应用设置。
-
防火墙或安全软件:检查是否有防火墙或安全软件阻止Charles的网络访问。
-
Charles设置:在Charles中启用SSL代理,确保所有域名都被捕获。
通过以上步骤,应能解决抓包无法加载图片资源的问题。