1、charles的Map Remote功能(指定的网络请求重定向到另一个网址),说白了就是你本来要请求A接口拿数据,重定向后,你实际请求的是B接口,拿到的是B接口返回的数据。
入口Tools->Map Remote
本次测试过程中的使用场景是:使用charles来抓app的网络包,抓取的请求是https的网络请求,但是使用的安卓测试机的系统版本为Android12,简单的在测试机上安装charles的SSL安全证书(用户级别)也无法成功抓取服务器托管网,需要root权限将SSL证书从用户级别的安装改成系统级别的安装,因服务器托管网为获取测试机的root权限需要BL(BootLoader)解锁(新绑定的小米账号,需要等一周),所以安装系统证书只好暂时放弃;选择了VirtualXposed这个工具来绕过安全证书来抓取,原理可以参考这篇文章:Android 7.0+使用VirtualXposed+Charles进行抓包 – 知乎
那么问题来了,如果我使用VXP这个工具来抓包会导致app发送给后端的请求中的某个参数为空,比如下面https://test-api/path/api?a=1&b=这个接口,正常请求的话b参数是device_id,但是在VXP里面运行是没有这个值的,所以只好通过这种方式映射有值的b参数的url,通过这种方式app请求后端就带上了设备ID(device_id)
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
相关推荐: LeetCode 双周赛 104(2023/05/13)流水的动态规划,铁打的结构化思考
本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 提问。 往期回顾:LeetCode 单周赛第 344 场 · 手写递归函数的通用套路 T1. 老人的数目(Easy) 标签:模拟、计数 T2. 矩阵中的和(Medium) 标签…