本配置說明分為PC端和移動端。
移動端的調試變化相對較大
PC端
安裝配置 Charles 根證書
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiInBnauY3YhlHOwkmbwMjazcWN3omanhmZmFTenNGVmtEd2ADMvwVZnJXYs9CXuNmLn1Wah5Waz5yM3d3Lc9CX6MHc0RHaiojIsJye.jpg)
儲存Charles的Root Certificate,一個xxx.pem檔案。
調出mac下的鑰匙串通路
點選左側的登入,然後把第一步中儲存的xxx.pem檔案拖到右側中,此時的情況是:
系統預設是不信任 Charles 的證書的,此時對證書右鍵,在彈出的下拉菜單中選擇『顯示簡介』,點選使用此證書時,把使用系統預設改為始終信任,如下圖:
最終:
配置到這一步還不能抓取https,還要配置一下Charles的SSL設定
設定host為
*
就可以抓取所有的https站點的資料啦,當然你也可以選擇一個一個添加,隻抓取已經添加了的域名。
現在我們就可以在Charles中抓到https的包咯。
移動端
點選在移動裝置上安裝Root Certificate證書,會彈出下列提示:
在手機浏覽器中打開
charlesproxy.com/getssl
這個連結,會跳轉到證書安裝界面:
點選安裝。
然後就可以抓取移動端的https包了。
關鍵的地方來了,經過上述操作之後我們可以抓取移動端Safari浏覽器的https的包,因為我們已經在IOS内信任了Charles的證書,但是微信浏覽器它似乎不是用的系統的信任體系,是以有了如下的錯誤提示:
unknown_ca
說明微信浏覽器并不信任Charles的 Root Certificate。
因為微信浏覽器預設拒絕不安全的https,是以螢幕會直接提示網絡出錯。0……0
微信端的手機調試應該會比較頭疼了,在此推薦一下另外一種調試方式吧。
微信web開發者工具
微信web開發者工具下載下傳位址
使用“微信web開發者工具”,可以像chrome devTool那樣看每一個請求。
微信web開發者工具可以用來做公衆号和小程式開發的調試,是以我們可以用它來調試公衆号内頁面。但是牽涉到與微信本身功能相關的地方(比如說擷取openid)就需要是該公衆号的開發者才行,否則會提示:
遇到這種問題時就需要登陸該微信公衆号的背景,把開發者的微信添加為“開發者”。
微信web開發者工具令人叫好的地方是,它有一個功能叫代理!!!
進入微信web開發者工具的設定->代理
如上設定并儲存後,我們就可以像是在手機端調試一樣,被charles抓到包了!!!
如果沒有設定代理,微信web開發者工具内的包是不會被charles抓到的!!!
參考連結
使用 Charles 擷取 https 的資料
charles配置部分第4、5張以及移動端證書安裝圖檔摘自使用 Charles 擷取 https 的資料