<pre>
在移動(dòng)app的開發(fā)當(dāng)中,我們經(jīng)常需要對(duì)大枷公司開發(fā)的app來進(jìn)行仿制來提高自己的經(jīng)驗(yàn)升級(jí)。這個(gè)時(shí)候我們往往需要抓取各自數(shù)據(jù)接口來獲取數(shù)據(jù)。
Fiddler這個(gè)軟件由于是用C#開發(fā)的,所以很依賴win平臺(tái),所以我在實(shí)際開發(fā)中應(yīng)用最多的還是Charles,由于開發(fā)語言是Java,所以具有很好的跨平臺(tái)性。
下載:
官網(wǎng):(PS:這是一款收費(fèi)軟件,土豪的童鞋可以支持一下。)目前最新的Release版本是3.11.5
破解版:(PS:完全是為了讓大家學(xué)習(xí)方便。)
安裝:
我想大家都會(huì)我就不在這里說明了,如果安裝過程中有什么問題可以隨時(shí)私密我。
配置:
我在網(wǎng)上找了一下相關(guān)教程,幾乎是千篇一律,有些具體的配置細(xì)節(jié)沒有詳細(xì)說明,很容易給初學(xué)者帶來誤導(dǎo),這也是我決定寫這篇文章的原因。
一、抓取iOS真機(jī)設(shè)備上的http請(qǐng)求
1、查看電腦的ip地址:
2、打開charles,設(shè)置Mac OS X Proxy:
3、設(shè)置proxy settings,記下端口號(hào),默認(rèn)8888
4、打開手機(jī)的wifi詳情,選擇http代理,填入剛剛記下的電腦的ip地址,還有上面記下的charles的端口號(hào)(例如,默認(rèn)的8888)
5、在手機(jī)上進(jìn)行網(wǎng)絡(luò)訪問,這樣charles會(huì)出現(xiàn)一個(gè)提示,大體上意思是,是否允許charles作為手機(jī)的網(wǎng)絡(luò)請(qǐng)求代理
6、結(jié)果:例如我在手機(jī)端請(qǐng)求B站的信息:
這是Response:
還可以看這個(gè)接口的Request
二、抓取iOS真機(jī)設(shè)備上的https請(qǐng)求
因?yàn)闉榱吮WC網(wǎng)絡(luò)訪問更加安全,所以好多公司的接口都采用了https,而且蘋果公司也對(duì)此有了明確的要求。
1、首先就是安裝Charles的根證書,Help - SSL Proxying - Install Charles Root Certificate ,會(huì)打開鑰匙串應(yīng)用,安裝進(jìn)去
當(dāng)安裝后,可能你看不到在哪里,在右上角的搜索中 輸入 cha 則會(huì)顯示出來,你看到上面是此根證書不被信任!
這樣,證書是不可用的,我們需要設(shè)置,在證書上點(diǎn)擊右鍵 -> 顯示詳情,展開信任選擇始終信任
然后點(diǎn)擊左上角的關(guān)閉,系統(tǒng)會(huì)彈出授權(quán)提示框,授權(quán)同意修改,回到列表,稍等,證書就刷新了
2、配置SSL訪問,在Proxy->SSL Proxying Settings->點(diǎn)擊add->在彈出的對(duì)話框里面設(shè)置主機(jī)和端口號(hào),如果設(shè)置為: .為部訪問。
3、經(jīng)過上面兩步可以實(shí)現(xiàn)pc數(shù)據(jù)的抓取了,如果想要進(jìn)行手機(jī)數(shù)據(jù)接口的抓取,還需要在手機(jī)端進(jìn)行證書配置。
CA證書下載鏈接:https://www.charlesproxy.com/documentation/additional/legacy-ssl-proxying/
證書下載完成后,會(huì)自己提示安裝,和企業(yè)級(jí)開發(fā)者證書一樣,比較容易搞定。這樣就可以抓取https的數(shù)據(jù)接口包了。
也可以通過Help界面進(jìn)行安裝。
注意2:iOS 10.3系統(tǒng),需要在 設(shè)置→通用→關(guān)于本機(jī)→證書信任設(shè)置 里面啟用完全
以上就是Charles的安裝及配置,提供給大家做為一個(gè)參考!如果在使用過程中遇到什么問題可以隨時(shí)溝通。
作者:skyF2016
鏈接:http://www.lxweimin.com/p/31fea1314a50
來源:簡(jiǎn)書
著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。</pre>