標籤:瀏覽器 使用說明 官方 sdn 檔案 title 訪問 height 缺點
iOS開發抓包工具之Charles使用
在iOS開發過程中,抓包是常見的必備技能之一。這裡我們主要介紹一下Mac下的抓包利器Charles(文中版本:4.0.1)。它可以非常方便的抓取Http/Https請求,從而提高我們的開發效率。本文中不提供破解版安裝使用說明(網上一大堆),建議使用正版,官方dmg:點擊此處。
一、如何抓取Http請求?
(1)安裝完成之後開啟Charles,設定連接埠號碼:8888(連接埠號碼可以自訂)。
選擇“Proxy”菜單下的“Proxy Settings”子功能表。開啟“Proxy Settings”對話方塊:
在“Proxy Settings”對話方塊中設定連接埠號碼:8888,並勾選“Enable transparent Http proxying”項:
(2)開啟“網路喜好設定”查看電腦IP地址:
(3)設定行動電話通訊(iOS):
(4)開啟需要抓包的手機APP,初次使用時,Charles會彈出確認對話方塊,直接點擊”Allow”按鈕後就可以看到對應的請求資料。
溫馨提示:抓完包之後,請把手機WiFi中的HTTP代理關閉。不然可能造成iOS無法訪問網路。
二、如何抓取Https請求?
(1)電腦安裝SSL認證
選中Charles,在“Help”菜單中選擇—>“SSL Proxying”—>“Install Charles Root Certificate”會自動開啟鑰匙串訪問視窗:
在“鑰匙串訪問”視窗中找到對應的認證,雙擊開啟。設定“使用認證時”項為:始終信任。
填寫管理員密碼更新設定。
(2)手機安裝認證(使用Safari方式):
請確保手機已經設定好手動代理(具體方式參照上面HTTP抓包設定方式)。
在手機Safari瀏覽器中輸入下面的連結地址:http://charlesproxy.com/getssl。手機會自動跳轉安裝“Charles Proxy SSL Proxying”描述檔案。如所示:
點擊“安裝”按鈕,會提示輸入手機密碼,然後確認安裝。
以上便完成手機SSL認證安裝步驟。
(3)在Charles工具列上點擊設定按鈕,選擇“SSL Proxying Settings…”:
開啟“SSL Proxying Settings”對話方塊:
點擊“Add”添加:Host中輸入*表示匹配所有主機。https預設連接埠號碼:443。
添加完成顯示結果如下:
(4)測試:
安裝手機認證之前測試結果如所示:
安裝手機認證之後測試結果如所示:
針對Charles代理訪問https有些正常有些失敗的處理方法(一般https只要開啟charles 的”Enable SSL Proxying”代理就能訪問):點擊此處
三、如果沒有Wifi,我們還可以這樣抓包?(本文不做詳解)
(1)抓包之rvictl方式:
開啟虛擬連接埠:rvictl -s
關閉虛擬連接埠:rvictl -x
然後使用wireshark來捕捉這個連接埠資料。
(2)抓包之tcpdump方式:
有個很大的缺點是手機需要越獄。
本文內容中部分來自網路,後續會不斷更新完善。歡迎一起學習交流!
如需轉載,請註明出處
四、參考部落格地址:
Mac上的抓包工具Charles
iOS開發抓包工具之Charles使用