mac下Charles軟件的使用

一.Charles簡(jiǎn)介

Charles是mac上常用的截取網(wǎng)絡(luò)封包的工具,Charles通過(guò)將自己設(shè)置成系統(tǒng)的網(wǎng)絡(luò)訪問(wèn)代理服務(wù)器,使得所有的網(wǎng)絡(luò)請(qǐng)求都要通過(guò)他來(lái)完成,從而實(shí)現(xiàn)網(wǎng)絡(luò)封包的截取和分析。

Charles是一款收費(fèi)軟件,可以免費(fèi)試用30天,未付費(fèi)的用戶之后仍可試用,但是每次的使用時(shí)間不能超過(guò)30分鐘,并且每次啟動(dòng)將會(huì)大約10秒的延遲。

Charles的主要功能包括:

1.支持SSL代理,可以截取分析SSL的請(qǐng)求。

2.支持流量控制??梢阅7碌退倬W(wǎng)絡(luò),以及等待時(shí)間較長(zhǎng)的請(qǐng)求。

3支持Ajax調(diào)試,可以自動(dòng)將json或者XML數(shù)據(jù)格式化,方便查看

4.支持AMF,可以將flash Remoting或 Flex Remoting信息格式化,方便查看

5.支持重發(fā)網(wǎng)絡(luò)請(qǐng)求,方便后端調(diào)試

6.支持修改網(wǎng)絡(luò)請(qǐng)求參數(shù)

7.支持網(wǎng)絡(luò)請(qǐng)求的截取的動(dòng)態(tài)修改。

8.檢查HTML,CSS,RSS內(nèi)容是否符合W3C標(biāo)準(zhǔn)。

二.Charles安裝和使用

http://www.charlesproxy.com下載各個(gè)版本的Charles安裝包,他就是dmg文件的,打開(kāi)后正產(chǎn)安裝即可。

網(wǎng)上也有老版charles破解版,百度一下就能找到。

SSL證書安裝

如果你需要分析SSL協(xié)議的內(nèi)容,那么你就需要安裝Charles的CA證書:

1.http://www.charlesproxy.com/ssl.zip下載CA證書。

2.解壓zip文件,雙擊.crt文件。

3.從鑰匙串訪問(wèn)中可以看到已經(jīng)添加成功的證書。

將Charles設(shè)置成系統(tǒng)代理

第一次啟動(dòng)Charles后,Charles會(huì)請(qǐng)求你給他設(shè)置系統(tǒng)代理的權(quán)限,你可以輸入登陸密碼以授予Charles該權(quán)限,也可以忽略該請(qǐng)求,然后在需要將Charles設(shè)置成系統(tǒng)代理時(shí),選擇菜單proxy-> macOX來(lái)將Charles設(shè)置check系統(tǒng)代理。

此時(shí)可查看request和response。

過(guò)濾網(wǎng)絡(luò)請(qǐng)求

通常情況下,我們需要對(duì)網(wǎng)絡(luò)請(qǐng)求進(jìn)行過(guò)濾,只監(jiān)控向指定服務(wù)器上發(fā)送的請(qǐng)求,這種需求,我們可以通過(guò)兩種方法來(lái)設(shè)置:

1.在主界面中的Filter欄中填寫需要過(guò)濾出來(lái)的關(guān)鍵字,例如我們服務(wù)器地址是www.baidu.com,則我們只需要在Filter欄中輸入baidu即可。

2.在charles的菜單欄選擇 proxy -> recording setting,然后選擇include欄,選擇添加一個(gè)項(xiàng)目,然后填入需要監(jiān)控的協(xié)議、主機(jī)和端口號(hào)。這樣就可以直接截取目標(biāo)網(wǎng)站的封包了。

通常情況下,我們使用方法1做一些臨時(shí)性的封包過(guò)濾,使用方法2做一些經(jīng)常性的封包過(guò)濾。

使用Charles協(xié)助iOS開(kāi)發(fā)

1.截取iPhone上的網(wǎng)路封包

charles通常用來(lái)存取本地的網(wǎng)絡(luò)封包,但是當(dāng)需要時(shí),我們也可以用它來(lái)截取其他設(shè)備上的網(wǎng)絡(luò)請(qǐng)求

charles設(shè)置

要截取iPhone的網(wǎng)絡(luò)請(qǐng)求,我們首先需要將Charles的代理功能打開(kāi)。在charles的菜單欄選擇proxy -> proxySetting,填入代理端口8888,并且勾選“enalbe transparent http proxying"

就完成了Charles的設(shè)置。

iphone設(shè)置

查看電腦wifi,打開(kāi)terminal,輸入ifconfig.en0

在iPhone上設(shè)置->無(wú)限局域網(wǎng)中,可以看到當(dāng)前WIFi名,通過(guò)單機(jī)右側(cè)的詳情按鈕,可以看到當(dāng)前連接的wifi詳細(xì)信息,包括ip,子網(wǎng)掩碼等。在其最底部有一個(gè)HTTP代理一項(xiàng),我們將其切換為手動(dòng),將電腦的ip地址手動(dòng)填到服務(wù)器欄,將端口設(shè)置為8888.

設(shè)置模擬器網(wǎng)絡(luò)

在Charles 的菜單上,選擇“proxy”-> "throttle setting"項(xiàng),在對(duì)話的彈框中,勾選 “enable throttling”,并且可以設(shè)置 Throttle Preset的類型,如下圖:

如果我們只是想模擬指定網(wǎng)站的網(wǎng)路速度,可以勾選上圖中的“only for selected hosts”項(xiàng),然后在對(duì)話框的下半部分設(shè)置中添加指定的hosts即可。

高級(jí)功能

Charles默認(rèn)并不截取SSL的信息,如果你想截取某個(gè)網(wǎng)站上所有的SSL網(wǎng)絡(luò)請(qǐng)求,可以在該請(qǐng)求上單擊右鍵,選擇“SSL Proxying”

修改網(wǎng)絡(luò)請(qǐng)求的內(nèi)容

有的時(shí)候?yàn)榱苏{(diào)試服務(wù)器的接口,我們需要反復(fù)嘗試不同的參數(shù)請(qǐng)求。charles可以方便地提供網(wǎng)絡(luò)請(qǐng)求的修改和重發(fā)功能。只需要在以往的網(wǎng)路上單機(jī)右鍵,選擇“edit”,即可創(chuàng)建一個(gè)可編輯的網(wǎng)絡(luò)請(qǐng)求。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • *Charles[http://www.charlesproxy.com/]是常用的網(wǎng)絡(luò)封包截取工具,在做移動(dòng)開(kāi)發(fā)...
    想起一個(gè)很好聽(tīng)的名字閱讀 37,498評(píng)論 4 32
  • 簡(jiǎn)介 Charles是在 Mac 下常用的網(wǎng)絡(luò)封包截取工具,在做移動(dòng)開(kāi)發(fā)時(shí),我們?yōu)榱苏{(diào)試與服務(wù)器端的網(wǎng)絡(luò)通訊協(xié)議,...
    古佛青燈度流年閱讀 4,060評(píng)論 1 20
  • 提到英語(yǔ)學(xué)習(xí),你會(huì)想到什么?背單詞! 那么你對(duì)哪個(gè)單詞印象最深刻?abandon! 你是不是也和我一樣?背過(guò)次數(shù)最...
    喵皇后閱讀 107評(píng)論 0 0
  • 去年在德國(guó)探親的日子里,值得回味的事情一件件。 記得那是一個(gè)星期天,連超市也打烊休息了,我和家人一行四人自駕游古城...
    雪花飄飄xhpp閱讀 428評(píng)論 1 6
  • 一片又一片的雪花,疊起執(zhí)念 從一頁(yè)書的厚度 直至三十三層樓,靜靜蹲坐 江湖廝殺,充耳不聞 你的藥片,你的嬌喘 你飲...
    厲雄閱讀 369評(píng)論 3 11

友情鏈接更多精彩內(nèi)容