Charles抓包方法

若是是mac在使用前須要點一下macOS proxyhtml

抓包的做用:前端

抓包能看到全部發出去的請求,能幫助咱們定位問題,看看是後端接口出現的問題,仍是前端有問題:若是接口返回的都是對的就是前端的問題,若是接口返回異常就 是後端接口有問題python

http請求抓取:web

怎麼抓手機上的包chrome

一、肯定你的電腦和你的手機在一個局域網裏面後端

二、手機設置代理:瀏覽器

在wifi那裏配 置代理選擇手動服務器那裏設置本身電腦IP端口號設置8888服務器

一百種charles鏈接不上手機的處理方式網絡

一、檢查電腦和手機有沒有鏈接的同一個wifi,必須tm鏈接的一個網工具

二、更換charles和移動端設備的端口,默認是8888,能夠改爲其餘的試試

三、有可能路由器設置的ap間不能相互訪問,須要登陸路由器,須要登陸路由器。進行求改。把用戶間訪問的對勾勾上。相似於這樣

四、關閉電腦的防火牆。試試 首先,若是,防火牆關了仍是不行,那麼請把手機wifi斷掉後從新鏈接,這樣通常就能夠解決問題了。 若是以上方法仍是不行的話,那麼請將手機wifi位置的ip地址設置成靜態ip,而後重啓charles工具。

五、在charles上添加手機的ip試試

查看charles端口號:

三、ipconfig,查看本身電腦的ip地址

四、手機經過設置http代理服務器,鏈接到電腦

  服務器輸入電腦的ip

  端口和charles的端口一致,

 

五、此時charles會給出提示。有新的鏈接。點擊allow

六、鏈接成功,此時手機發送的內容,charles能夠抓到。

而後若是勾選了Proxy - Windows Proxy 的話,那麼就會將電腦上的抓包請求也抓取到,若是隻抓手機的話,能夠將這個設置爲不勾選。

 

怎麼在模擬弱網測試 

什麼樣的網絡屬於弱網

低於2G速率的時候都屬於弱網,3G也可劃分爲弱網,通常Wi-Fi不劃入弱網測試範疇。

charles模擬弱網  proxy => throttle settings

配置參數解析:
bandwidth —— 帶寬,即上行、下行數據傳輸速度
utilisation —— 帶寬可用率,大部分modern是100%
round-trip latency —— 第一個請求的時延,單位是ms。
MTU —— 最大傳輸單元,即TCP包的最大size,能夠更真實模擬TCP層,每次傳輸的分包狀況。
Releability —— 指鏈接的可靠性。這裏指的是10kb的可靠率。用於模擬網絡不穩定。
Stability —— 鏈接穩定性,也會影響帶寬可用性。用於模擬移動網絡,移動網絡鏈接通常不可靠。

方法二:chrome的webview調試工具弱網模擬

使用chrome的webview調試工具,缺點是隻適用於web頁面的弱網模擬。
具體步驟:
(1)應用打開webview調試功能,具體以下:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
    WebView.setWebContentsDebuggingEnabled(true);
}
(2)手機連接電腦,運行APP,進入具體H5頁面;
(3)chrome的DevTools中打開Webview:進入chrome://inspect/#devices,會顯示已經鏈接設備,選中待調試webview的inspect
network頁面,No throttling下拉框,能夠進行網絡模擬。

 

怎麼攔截請求

六、charles http 攔截(Breakpoints)
在Sequence 這攔,選擇要攔截的接口,右擊 -> Breakpoints 之後的請求和響應分別攔截一次跳到改數據內容頁面。
按鈕說明:

cancel 跳過不改
abort 丟棄
excute 執行(修改後點擊)

 二、在瀏覽器中刷新該頁面,Charles會跳轉到Breakpoints列表

 三、篡改請求信息後,點擊底部Execute按鈕

 

四、返回瀏覽器查看服務器返回結果,返回的頁面信息爲http://www.nnzhp.cn/archives/category/python,而不是用戶真正請求的http://www.nnzhp.cn/

篡改服務器響應結果【能夠用來模擬移動端的接口返回異常的狀況】

一、設置Breakpoints,將請求信息攔截,而後什麼都不改,跳轉到以下界面:

三、點擊Text,修改返回信息,點擊Execute

四、返回瀏覽器查看頁面,展現信息以下

 給請求加參數

對須要加參數的頁面進行攔截,而後刷新,到breakpoints頁面點擊ADD,添加須要添加的參數,點擊Execute

而後等charles返回,返回帶有參數,以下圖:

抓Https的包

1. 安裝charles ca證書
1.1 選擇 help | Install Charles CA SSL Certificate

1.2 而後會彈出證書信息,選擇安裝證書,下一步,將證書存儲改成:受信任的根證書頒發機構,下一步,完成

2. 修改charles的proxy settings
2.1 選擇Proxy | Proxy Settings,彈出proxy設置選項卡,勾選Enabling transparent HTTP proxying

2.2 選擇ssl,勾選Enable SSL Proxying,在Location部份選擇add,按以下圖添加,抓取任意站點、443端口的數據

 這個時候去抓https://googleads.g.doubleclick.net/pagead/html/r20181107/r20180604/zrt_lookup.html返回200就正確了!

URL映射 (把一個地址的請求轉發到另外一個地方)

用途:好比線上有個bug須要驗證,能夠用線上的APP往線下發請求

訪問http://www.nnzhp.cn時向http://www.cc-na.cn/這個發請求

瀏覽器展現以下:

 

選擇Map Local,映射到本地你保存的文件上面

選擇map local 是返回本地文件內容

 

 瀏覽器展現以下:

相關文章
相關標籤/搜索