抓包工具charles-常用測試場景
一、準備工作
- 手機設定代理
連線wifi—代理—設為手動—填入charles所在電腦主機名(cmd--ipconfig)、埠號(8888)--確定
- Charles設定埠號:proxy—proxy setting--8888--OK
- SSL代理設定
Proxy—SSL proxy setting—填入主機名及埠號
- Proxy—start throttling
二、檢視介面request、response
Request 出現“d”、“s”、“c”,則為DES加密方式,找text複製文字。若為“data”,則為AES加密方式,直接複製data值。
Response處理方式同request。
複製加密的文字,使用對應的解密工具進行解密即可
若解密完之後程式碼仍未完全解開,可將解密後的程式碼再複製到http://tool.chinaz.com/tools/urlencode.aspx進行二次解密)
三、設定黑名單
1、右鍵--需要加入黑名單的記錄,即新增成功↓↓↓↓
2、tools--black list
當黑名單新增成功後,對1001埠進行抓取,如圖:
將黑名單去除後,對1001埠進行抓取,如圖:(200為獲取成功)
四、HTTPs抓包方法
抓包出現method方法為connect時,無法檢視抓包內容,此為請求是https格式造成的,
解決步驟為:
- 電腦端信任charles的證書
- 手機端安裝對應的證書
- 將對應的https請求加入ssl proxying
詳細步驟可按照如下教程解決:
https://blog.csdn.net/yangmeng13930719363/article/details/51645435
五、設定斷點
1. Breakpoints settings(手動編輯斷點內容)
1.目前使用fiddler發現設定斷點,該工具有的返回的格式不是json,導致客戶端不會展示
使用charles工具,可以避免該問題,具體操作如下
對要打斷點的介面右鍵,選擇【Breakpoints】,新增到斷點列表後,進入proxy- Breakpoints settings設定斷點的型別
斷點型別分為:request斷點、response斷點
此處設定的斷點,需要實時編輯對應的斷點內容
參考教程:https://blog.csdn.net/f20052604/article/details/50867019
2.自動將指定的響應(response)資料改為固定返回值
- 選擇某一個網路請求>滑鼠右鍵Save Response...
- 如果該請求返回的是一個json串,儲存檔案時需要儲存21006.json
- 需要更改的請求點選右鍵Map Local..指定到本地儲存的21006.json
- 通過在本地更改21006.json就可以自動的更改請求的返回值。避免每次使用時修改breakpoints中的返回值,提高效率
參考教程:https://blog.csdn.net/qqgirllianxin/article/details/44593255
3.自動將指定的請求(request)資料改為固定返回值
- 選擇某一個網路請求>滑鼠右鍵map remote,請求新增成功後
- 點選tool>map remote settings進入設定頁面,雙擊該請求開啟編輯頁面
- 將編輯好的響應資料填充在編輯框的下半部分,如下圖
按上述操作成功後,再次請求該連結,會自動使用已設定好的請求資料
4.設定網速
用於模擬不同網速下的測試場景