1. 程式人生 > >Charles抓web http、https請求,抓Android http、https請求

Charles抓web http、https請求,抓Android http、https請求

 為什麼要抓包?

抓包:能幫助我們定位問題,是後端接口出現的問題,還是前段有問題

Windows下http請求

怎麼攔截請求?

選中要攔截的請求,滑鼠右鍵,點選breakpoints,設定斷點,即可攔截請求

下次再請求這個http路徑時,就自動跳出下面內容

怎麼修改請求

修改request請求

在上面的彈出框出現之後,點選Edit Request,可以修改裡面的內容,如請求方式,請求地址,修改完成後,點選 最下邊的Execute

修改response請求

在上方跳出request請求之後,點選Execute後,就會跳出response請求,如下圖,點選Edit Response,下的html,裡面會出現HTML內容,可以隨意改動裡面的內容,點選Execute

頁面返回資料如下圖

charles抓取windows https請求

step1、需要在電腦上安裝證書

 

 

 

 

 step2、儲存證書到桌面,以備後續在瀏覽器中安裝證書,一定要是.cer格式的

step3、在chrome瀏覽器中安裝證書

開啟chrome瀏覽器,選擇設定---->高階--->管理證書--->

以上:證書匯入成功,在charles裡面驗證一下即可,現在就可以抓到https請求了,如下圖

注意

:有些加密的https請求,還是請求不到的,怎麼請求到後續再請教別人吧,如下圖

注意:在安裝證書的過程中我遇到了一個坑,那就是先在IE瀏覽器裡安裝了證書,但是去chrome裡面發請求,發現還是抓不到https請求,我因為我按錯了呢,後來經過我多次安裝,發現了一個大問題,那就是,你在哪個瀏覽器安裝的證書,那就用哪個瀏覽器去發請求,否則就是抓不到https請求的。例如:經常用chrome,那就在chrome上安裝證書,不在chrome上安裝,反而在別的瀏覽器安裝,那麼用chrome請求是抓不到https請求的。

抓取Android手機上的http請求

前提:包保證電腦與手機是在一個區域網內,我的理解就是連的是同一個無線網,比如都連的家裡的網,或者都連得公司的網

step1、配置charles

step2、獲取電腦端的IP,記住IP

首先獲取到電腦的IP,控制檯輸入IPconfig

step3、設定Android手機的代理設定

 找到和電腦同一區域網的無線,操作如下圖

設定代理伺服器主機名,即剛才獲取到的IP;代理伺服器埠即第一步在charles裡面設定的埠好

以上,設定完畢,即可在charles裡面抓到Android手機裡面的http請求,如下圖

 

charles抓取Android手機的https請求

和web端的一樣,也需要安裝證書,由於本人是錘子手機,一直安裝不了證書,所以還是參考下面的連線吧

https://blog.csdn.net/m840449234/article/details/54016607

怎麼模擬弱網測試

開啟charlse---Proxy---Throllte Settings

勾選上Enable Throttling,可以選擇一些操作對應的網速

如果只想對某地址的請求進行弱網測試,☑️[Only for selected hosts]

進行這項設定後,我們會看到小紅旗處於工作狀態。

 

然後,開啟Sequence檢視每個請求的執行情況,比如:

 怎麼做url對映

Map remote

map remote 就是把一個地址的請求轉發到另一個地址上

新增 map remote

設定 map remote

驗證:此時訪問nnzhp.cn,訪問的就不是之前的內容了,實際是cc-na.cn裡面的內容了,但是地址是不變的,只是內容變了,證明url對映起作用了

Map Local

返回指定的檔案內容

配置要訪問的地址與返回的檔案

返回內容