抓包工具Charles乱码解决办法
前言
雖然實習(xí)工作還沒有著落,但學(xué)習(xí)還是要繼續(xù)的嘛,今天就來學(xué)習(xí)使用下 Mac 下截取網(wǎng)絡(luò)封包的工具:Charles。
我想,如果你是個善于利用搜索引擎的人,那么在 Google 中輸入「Charles 使用」等相應(yīng)的關(guān)鍵字,便會出現(xiàn)一大把文章。
不過呢,之所以會有這篇文章,就是因為今天在安裝和初步使用的過程中,遇到了些問題,而目前搜索出來的絕大數(shù)文章并沒有提及(或者解決辦法已經(jīng)過時)。所以,我在此記錄下來,希望能幫助到通過搜索找到這的朋友們。
付費 & 正版
Charles 是收費軟件,可以免費試用 30 天。試用期過后,未付費的用戶仍然可以繼續(xù)使用,但是每次使用時間不能超過 30 分鐘,使用過程中不定時會中斷 5 秒鐘,并且啟動時將會有 10 秒種的延時。因此,該付費方案對廣大用戶還是相當(dāng)友好的,即使你長期不付費,也能使用完整的軟件功能。只是當(dāng)你需要長時間進(jìn)行封包調(diào)試時,會因為 Charles 強制關(guān)閉而遇到影響。
關(guān)于價格,見下表:
| 1-4 User Licenses | US$50 / license |
| 5+ User Licenses | US$40 / license (20% discount) |
| 10+ User Licenses | US$30 / license (40% discount) |
| Site License | US$400 |
| Multi-Site License | US$700 |
50 刀的價格雖然不白菜,但試用版并未閹割功能,只是在使用體驗上稍差,這可稱得上良心啊。雖然我暫時不會購買,但我依然會使用正版,希望你也如此。
VPN
當(dāng)我打開 Charles(Mac OS X Proxy 已選擇),按理說,我立刻就能看見源源不斷的網(wǎng)絡(luò)請求出現(xiàn)在 Charles 的界面中啦,可為什么始終是一片空白呢?
一番搜索,終于在這里?Charles proxy not working with Chrome?找到了答案:
For anyone else using VPN: Charles must be turned on before VPN. So quitting VPN after turning on Charles won’t work either.
沒辦法,為了正常使用 Charles,只能暫時把梯子撤了:
亂碼
剛開始用著挺好的啊,怎么一言不合,就來個亂碼呢?
于是,便在 Google 中輸入「Charles 亂碼」,我保證,你能搜到的絕對是這樣的答案:
可我告訴你,反正我嘗試了在各種地方進(jìn)行添加,最后都沒有成功。
而我最終解決了亂碼的問題,但根本沒有涉及到?Info.plist。你只要確保,我接下來提及的問題,你有正確進(jìn)行設(shè)置。
安裝 SSL 證書
Mac 端
首先去?http://www.charlesproxy.com/ssl.zip?下載 CA 證書文件,然后雙擊 .crt 文件,選擇「總是信任」按鈕,在鑰匙串訪問中即可看到添加成功的證書。
看看,人家說的多么簡單啊,可事實呢?當(dāng)我訪問上述網(wǎng)址時,出現(xiàn)的是如下的文字:
If you are running Charles v3.10 or later, please go to Charles and consult the SSL Proxying submenu in the Help menu, for instructions on installing your new Charles Root Certificate.
我那蹩腳的英文告訴我:如果你使用的是 v3.10 及之后的版本,安裝方法已經(jīng)變了,正確的姿勢:啟動 Charles 軟件,在菜單中找到 Help -> SSL Proxying -> Install Charles Root Certificate. 如下圖所示:
圖片來自
隨后是這樣的:
圖片來自
iPhone 端
步驟:Help -> SSL Proxying ->Install Charles Root Certificate on a Mobile Device…
Mac 上的設(shè)置
在 Charles 的工具欄上點擊設(shè)置按鈕,選擇 SSL Proxy Settings,選中 Enable SSL Proxying。(別急,選完先別關(guān)掉)
SSL 選項卡的 Locations 里填寫要抓包的域名和端口,點擊 Add 按鈕,在彈出的表單中 Host 填寫域名。比如填api.instagram.com,Port 填 443
圖片來自
關(guān)于亂碼,如果沒有做這項操作,則肯定會出現(xiàn)亂碼。而至于否是在?Info.plist?中添加?UTF-8?的字段,反正最后我沒加,但一切正常。
所以這個坑,我也是無意間解決的。
iPhone 上的設(shè)置
首先我們需要獲取 Charles 運行所在電腦的 IP 地址,Charles 的頂部菜單的 “Help”->”Local IP Address”,即可在彈出的對話框中看到 IP 地址,如下圖所示:
然后就是在 iPhone 上的一系列操作,又是很簡單,有木有!
可是,為什么尼瑪我怎么試都不成果呢?!iPhone 上瀏覽器網(wǎng)址都打不開了….于是又嘗試了另一種方式,在終端敲入?ifconfig en0:
圖片來自
Done! 終于可以愉快的玩耍了:)
總結(jié)
以上是生活随笔為你收集整理的抓包工具Charles乱码解决办法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数组的最后一位的下一位为什么是0?
- 下一篇: for(;;)函数中判断条件执行顺序