寫本文章目的:記錄使用Charles抓包然后修改發出去的請求參數和服務器返回值
一、抓包可以幫我們做什么:
1、Charles抓包可以幫我們看發出去的請求
2、定位問題:看是server端的問題還是客戶端的問題
3、可進行弱網測試(http協議)
如要測一個功能,無法確定是前端還是后端的問題時,通過抓包工具Charles就可以看出來了;
二、瀏覽器抓包修改請求和服務器返回(http請求為例,一般https是抓不到包的,不限制瀏覽器種類,IE、谷歌等都可以)
1、打開Charles
1)、打開瀏覽器輸入要抓包的網址進行訪問,如我們這里訪問北京58同城(bj.58.com),訪問成功后看Charles
2)、找到我們訪問的請求,點擊請求前面的小“+”,展開,點擊<default>,就可以查看request和response的相關信息
3)、我們如果要修改該請求的發出的數據,那么我們先要給該請求打斷點,選擇對應的請求右鍵,選擇Breakpoints,選擇如下圖
4)、打開瀏覽器,再次訪問58同城后,Charles中出現以下內容,同時瀏覽器中58同城頁面在轉圈
5)、Charles中修改請求數據,發出數據可以進行隨便修改-修改后點擊Execute執行,則發出的請求被修改:
6)、修改response數據:如將response數據的58公眾號改為68公眾號,點擊Excute,再次訪問頁面時返回數據被修改;
7)、弱網測試
弱網設置
三、手機端抓包
1、必須保證手機和電腦在同一個局域網內
2、獲取到電腦的ip地址,Charles默認的端口號是8888,如果修改了端口號,可通過Charles的Proxy-Proxy settings進行查看和修改
3、手機端在WLAN中設置代理:配置代理-手動設置ip和端口號保存,這樣手機端的請求在Charles中就可以抓到了;
四、如果我們只想抓某一個請求的包,那可以通過設置過濾來控制
sequence中設置要抓包的地址即可