MAC下代理工具Charles使用
一.跟蹤HTTPS
1.下載官方的證書ssl.zip證書,解壓成*.crt
2.可以通過郵箱或者發布到自己的服務器的方式,然后用手機去下載安裝crt文件。
3.charles設置Proxy-->SSL,勾選Enable SSL Proxying,下面點擊"Add",將你需要驗證的域名+端口號添加進去并且勾選。比如:*.my.com, ?mobileapi.myserver.com
4.手機設置對應代理的IP,這個時候就可以看見Charles中https請求的內容了
PS: 步驟3中如果你勾選了,但是你的設備沒有裝證書,如果走代理則會請求失敗。不勾選,可以請求成功,但是無法看見內容。
碰到mthd="Connect",request里看見“SSL Proxying not enabled for this host: enable in Proxy Settings, SSL locations”的錯誤,則表示第3步沒有將域名設置好。
?
二.強大的mapping功能
簡單來說,可以遠程的某個文件代理到本地文件,從而進行調試。
1.打開我csdn的blog首頁,然后可以在charles看到所加載的頁面和相關資源,找一個js文件做代理,如圖:
2,創建一個本地文件1.txt,我將realtime.js的 response拷貝下來,并且在開頭添加自己的js語句 “alert(123)”
3.選擇"Map Local..",設置如圖:注意的是在paramter里我設置的是"*",因為很多情況下接口可能會加隨機串,當然URL也可以使用通配符來匹配
4.點擊OK,重新刷新頁面。頁面彈出alert,內容為:"123"。并且在"Notes"的Tab里會告訴你“Mapped to local file: /Users/apple/Desktop/1.txt”,表示成功
?
5.如果要刪除已經設置的map地址,可以在Tools-->Map Local... 里管理,添加或者刪除,非常方便。
?
三.網速模擬
Proxy-->Throttling Setting,可以模擬各種情況下的網絡速度,從而可以在低速情況查看APP的使用情況
部分設置含義,Bandwidth(帶寬)、Utilistation(利用百分比)、Round-trip(往返延遲)、MTU(字節)
?
四.斷點功能
APP某個界面需要調用接口,并且返回數據來繪制界面。我們可以通過使用斷點功能來篡改請求的數據或者返回的數據,達到模擬的效果。讓我們來看看怎么做
1.類似于mapping,我們可以針對接口右鍵選擇"BreakPoints",這樣這個接口就被加入到斷點狀態了
2.需要進一步修改斷點的屬性,可以在菜單欄"Proxy"-->"BreakPoints"里進行添加刪除或者修改,配置方式和mapping雷同,也可以使用通配符來操作,并且可以選擇這個斷點是在request還是response,還是兩者都要
3.這個時候再刷新界面,會直接跳轉到斷點模版,這個時候你可以在對應狀態情況下修改request或者response,然后點擊下方按鈕“Execute”。
?
五.重復發送
這個和前端似乎關系不大,可以對接口測試健壯性,也是右鍵點擊某個請求,然后"repeat" 或者"repeat Advance",后者可以設置循環調用次數和間隔
?
?
六.支持中文顯示(Charles亂碼問題)
打開Charles.app,找到Info.plist,然后添加參數-Dfile.encoding=UTF-8
?
?
?
?
?
參考
http://www.36ria.com/6278
轉載于:https://www.cnblogs.com/kenshinobiy/p/4325601.html
總結
以上是生活随笔為你收集整理的MAC下代理工具Charles使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 最简单的EasyUI菜单栏
- 下一篇: 简易的AJAX工具[转]