昨天电视应用商店的音乐模块,运营同学突然告知无法播放音乐了。之前是客户端同学先看客户端日志,然后告知服务端同学哪些接口出了问题。可客户端同学离职了,这可就懵圈了。因为服务端我也是刚交接过来不久,不熟悉客户端页面和哪些数据接口对应。经客户端的同学推荐,我发现了Charles抓包神器。下面我讲解如何使用charles抓取页面的http/https请求的: 1.解压并运行Charles;
我们在自己的PC上解压Charles.zip文件,解压完后直接运行Charles.exe文件,Charles便启动了。
2.设置电视代理;
我们需要在电视的无线网络连接处设置http代理,服务器地址为PC的ip地址,端口号为8888。
此时我们浏览电视应用商店的各个页面,Charles便时时抓取到了访问服务端的http接口信息。
触类旁通,举一反三,电视的游戏中心是否也可以用Charles进行抓包呢?
当我在电视上浏览游戏中心的各个页面时,charles并未抓取到数据。
通过和客户端同学交流得知,游戏中心使用的是https接口,charles抓取https接口需要安装证书,对此我采取了以下措施: 1.给PC安装证书;
我们在Charles选择Help–>SSL Proxying–>Install Charles Root Certificate,这样PC便安装了证书。
2.给电视安装证书;
我们在Charles选择Help–>SSL Proxying–>Install Charles Root Certificate on a Mobile Device or Remote Browser,弹框提示如图:
我们在PC浏览器输入http://charlesproxy.com/getssl 下载证书到本机,然后拷贝到电视上,在电视上安装Charles证书。
ps:证书需要在PC上下载完后拷贝到电视,直接在电视上通过浏览器输入下载地址下载后的证书无法安装。
3.开启SSL代理功能;
我们在Charles选择Proxy–>SSL Proxying Setting,选中Enable SSL Proxying,在Locations里面添加要使用SSL代理的网站,端口号输入443,如果需要匹配所有的HTTPS网站则输入 * 号即可,如图:
|