前言
1、工具的選擇
?????? 抓包方式有多種(Charles、Fiddler、Spy-debugger、Wireshark等),這里只說這一種Charles!
?????? Charles是一個在本地運行的Web代理(HTTP代理/ HTTP監視器)軟件。開啟Charles后,Web瀏覽器(或任何其他的互聯網應用程序)將配置為通過Charles來訪問互聯網,而Charles則能夠記錄并顯示你所有的發送和接收的數據。
?????? 在Web和互聯網的開發項目中,如果你不能看到客戶端(比如瀏覽器)和服務器之間到底有什么數據正在發送和接收,如果沒可視化監控手段,那么確定故障原因將是困難和費時的。Charles可以很容易地看到發生了什么,這樣你就可以快速診斷并解決問題。
2、抓包測試原理
抓包工具的主要原理就是網絡代理,所有的請求和響應都用工具來隔離。工具內部就能模擬限速以及丟包的效果。
手機配合Mac抓包主要是利用手機訪問Mac機上的代理端口,把手機的請求和響應綁定到該端口,然后所有控制就由工具去掌管。
相同的網絡,Mac的IP=a,手機用a作為代理,端口則是Charles默認的8888。關鍵環節,Mac使用正常端口訪問網絡。
3、工具的安裝
安裝包可以去官網下載,然后找破解,或者直接下載破解版。下載了DMG文件后即可開始安裝,安裝時可能會提示需要java支持,如果機器上java版本不合適,請根據提示到蘋果網站找到合適的java安裝。其實 用正版也可以,只不過每次使用時長是30分鐘
MAC與iPhone連接操作步驟
1、電腦端:打開Charles工具,先從菜單入手
http: proxy>proxy settings設置代理端口
https:proxy>SSL proxy settings設置要代理的域名,默認端口443
2、手機端:手機設置代理連到端口上,前提是手機和pc在同一局域網
3、用手機瀏覽器 下載證書
注意:記得去手機 設置-通用-描述文件 里安裝一下這個文件?。?!
準備就緒開始抓包
到此為止手機里的請求都可以獲取到如下圖? 以 高鐵管家App 為例
看一下這個地址mobile.12306.cn 前面是小鎖??,說明獲取到的數據是看不到的,接下來我們要設置SSL地址,https:proxy>SSL proxy settings設置要代理的域名mobile.12306.cn
再次嘗試重新刷新數據
到此為止是數據請求的抓包過程
MAC上使用Safari瀏覽器調試WebView
在macOS上打開Safari設置
Safari – 偏好設置 – 高級 – 勾選“在菜單欄中顯示開發”
在iOS設置
設置 – Safari – 高級 – 打開Web檢查器
將網頁的地址輸入到手機Safari上打開,注意:電腦和手機要用數據線連接!?。?/b>
下圖就是調試界面