為了抓取小程序數據所以使用Charles來抓取,下面介紹下使用方法(mac環境下使用)。使用Charles可以非常方便的抓取Http/Https請求。官方dmg下載地址:點擊此處下載
Charles抓取Http請求
- 安裝完成之后打開Charles,設置端口號:8888(端口號可以自定義)。選擇“Proxy”菜單下的“Proxy Settings”子菜單。打開“Proxy Settings”對話框。 macOS Proxy 是監聽電腦,取消勾選后不會監聽電腦的數據。
- 在“Proxy Settings”對話框中設置端口號:8888,並勾選“Enable transparent Http proxying”項。
- 手機,電腦在同一個局域網下。打開電腦“網絡偏好設置”查看電腦IP地址--->>打開手機將手機的wi-fi 代理網絡設置成你的電腦IP(iOS),端口設置為8888。
-
- 打開需要抓包的手機APP,初次使用時,Charles會彈出確認對話框,直接點擊”Allow”按鈕后就可以看到對應的請求數據。
Charles抓取Https請求
- 安裝SSL證書
選中Charles,在“Help”菜單中選擇—>“SSL Proxying”—>“Install Charles Root Certificate”會自動打開鑰匙串訪問窗口。
在“鑰匙串訪問”窗口中找到對應的證書,雙擊打開。設置“使用證書時”項為:始終信任。
安裝后效果如下圖:
-
手機安裝證書
-
在手機已經設置好手動代理后,在手機Safari瀏覽器中輸入下面的鏈接地址:http://charlesproxy.com/getssl。手機會自動跳轉安裝“Charles Proxy SSL Proxying”描述文件。如下圖所示。
-
在Charles工具欄上點擊設置按鈕,選擇“SSL Proxying Settings…”,打開“SSL Proxying Settings”對話框。
- 點擊“Add”添加:Host中輸入*表示匹配所有主機。https默認端口號:443。
- 安裝手機證書之后,我們就可以訪問了,例如
- 最后如果出現unknown。 Proxy Settings 設置的端口跟手機上的也是好的,SSL PRo相應Settings 配置的訪問域名也是好的,證書也安裝好了。那么就去手機 看通用->關於本機->證書信任設置->CA勾選 應該是這個問題。
- 一切准備好后,進入微信打開任意個小程序就可以