抓包工具在APP開(kāi)發(fā)過(guò)程中使用非常頻繁,對(duì)開(kāi)發(fā)者理解網(wǎng)絡(luò)傳輸原理以及分析定位網(wǎng)絡(luò)方面的問(wèn)題非常有幫助。
筆者一直比較喜歡Wireshark,但由于最近的項(xiàng)目是短連接項(xiàng)目,Wireshark太過(guò)重量。所以筆者選擇Charles進(jìn)行App的抓包,配置也更加簡(jiǎn)單。
1. HTTP抓包配置
1.1 查看當(dāng)前wifi的IP地址
1.2 設(shè)置手機(jī)HTTP代理
iOS手機(jī),連接與電腦同一個(gè)WiFi。然后點(diǎn)擊“設(shè)置->無(wú)線局域網(wǎng)->連接的WiFi”,設(shè)置HTTP代理。
進(jìn)入wifi的配置設(shè)置。
增加代理信息并保存。
服務(wù)器為電腦IP地址:如192.168.0.102 端口:8888
端口默認(rèn)為8888,設(shè)置的IP要與電腦的IP一樣
配置代理之后,電腦必須打開(kāi)Charles才能上網(wǎng)。所以抓包結(jié)束后,要將配置代理關(guān)閉。
1.3 電腦上打開(kāi)Charles進(jìn)行HTTP抓包
打開(kāi)Charles。
手機(jī)配置成功后會(huì)彈出提示,點(diǎn)擊“Allow”即可。
此時(shí),HTTP的網(wǎng)絡(luò)包已經(jīng)可以查看,但是HTTPS的依舊不可以。
2. HTTPS抓包配置
想要HTTPS抓包,首先要按照順序完成上面的HTTP的配置。
2.1 手機(jī)配置加密證書(shū)
點(diǎn)擊上面選項(xiàng)后,Charles會(huì)彈出提示。
在手機(jī)Safari瀏覽器輸入地址 "chls.pro/ssl",出現(xiàn)證書(shū)安裝頁(yè)面,點(diǎn)擊安裝
點(diǎn)擊安裝。
對(duì)于iOS10之后的系統(tǒng)版本,需要進(jìn)行下面的操作——對(duì)根證書(shū)進(jìn)行信任操作。
2.2 Charles配置加密
開(kāi)啟“SSL Proxying”
點(diǎn)擊“SSL Proxying Setting”,增加SSL攔截規(guī)則,像筆者比較懶,就如圖將所有443端口的請(qǐng)求都進(jìn)行了攔截。
不需要重啟Charles,此時(shí)開(kāi)始,所有的HTTPS的請(qǐng)求也是可見(jiàn)的了。
3. 抓包之后一定要做到
抓包結(jié)束后一定要關(guān)閉wifi的代理配置,否則Charles關(guān)閉后,手機(jī)將無(wú)法用這個(gè)wifi上網(wǎng)。
最后,限于筆者經(jīng)驗(yàn)水平有限,歡迎讀者就文中的觀點(diǎn)提出寶貴的建議和意見(jiàn)。如果想獲得更多的學(xué)習(xí)資源或者想和更多的技術(shù)愛(ài)好者一起交流,可以關(guān)注我的公眾號(hào)『全菜工程師小輝』后臺(tái)回復(fù)關(guān)鍵詞領(lǐng)取學(xué)習(xí)資料、進(jìn)入前后端技術(shù)交流群和程序員副業(yè)群。
本文摘自 :https://blog.51cto.com/u