一.跟蹤HTTPS前端
1.下載官方的證書ssl.zip證書,解壓成*.crtapi
2.能夠經過郵箱或者發佈到本身的服務器的方式,而後用手機去下載安裝crt文件。服務器
3.charles設置Proxy-->SSL,勾選Enable SSL Proxying,下面點擊"Add",將你須要驗證的域名+端口號添加進去而且勾選。好比:*.my.com, mobileapi.myserver.com網絡
4.手機設置對應代理的IP,這個時候就能夠看見Charles中https請求的內容了app
PS: 步驟3中若是你勾選了,可是你的設備沒有裝證書,若是走代理則會請求失敗。不勾選,能夠請求成功,可是沒法看見內容。工具
碰到mthd="Connect",request裏看見「SSL Proxying not enabled for this host: enable in Proxy Settings, SSL locations」的錯誤,則表示第3步沒有將域名設置好。post
二.強大的mapping功能測試
簡單來講,能夠遠程的某個文件代理到本地文件,從而進行調試。this
1.打開我csdn的blog首頁,而後能夠在charles看到所加載的頁面和相關資源,找一個js文件作代理,如圖:spa
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.app,找到Info.plist,而後添加參數-Dfile.encoding=UTF-8
參考
http://www.36ria.com/6278