charles-rewrite用法詳講解

Rewrite功能適合對某一類網絡請求進行一些正則替換,以達到修改結果的目的。
可以重寫接口所有元素的內容:headerhosturlpathquery paramresponse statusbody.
具體操作如下:
1.點擊Charles菜單欄Tools中的Rewrite

 
image.png

 

2.彈出Rewrite Settings框,勾選左上角的Enable Rewrite選項,並點擊Add,左側邊框出現Untitled Set,在右側的Name欄可以對此次的Rewrite進行重命名。

 
image.png

在右側Location欄點擊Add,在彈出的Edit Location對話框中,填入相關參數,最後點擊OK

 
image.png

接着,在右側Rules欄點擊Add,在彈出的Rewrite Rule對話框中,填入相關參數,最後點擊OK

 
image.png

 

一、修改接口返回報文參數
作用:對請求的響應內容做修改,一般是對某一個或幾個值進行rewrite,用新的值來替代返回的值
使用場景:可以用來mock數據,比方說在開發中爲了測試功能需要請求的某個數組字段有值,但是當前環境無法給出,那麼就可以使用該功能

 
image.png

 

會將返回數據中的2018-08-05全部替換成2018-08-03

二、修改請求的header
作用:可以對請求或者響應的header內容進行操作,包括添加、修改及刪除。
使用場景:在需要對header進行處理時用到,例如爲了用上某個環境數據,可能需要對應userid,這時本地開發是可以在請求的header中加上userid信息;也可以重寫響應header的信息

 
image.png

會在請求的header中添加userid屬性。
:Match欄的name和value值如果不填會匹配所有的請求,如果有值,則去匹配有改鍵值的請求。

 

三、修改path
主要rewrite path內容使用指定rewrite規則的path來響應指定的請求path,它可以對path進行裁剪

 
image.png

 

請求的結果如下:

 
image.png

四、其他
host: 主要是對請求進行host修改,以達到本地請求獲取指定host環境中的數據,常見於mock數據

url: 作用:修改url中某些部分,可以用別的url進行替換或者url裁剪時間戳或者md5
使用場景:場景使用非常多,既可以對host也可以對path進行rewrite,可以滿足指定host下的請求重定向到其他host下對應path

query param:作用:可以對param進行操作,包括修改、添加、刪除等
使用場景:有時請求可能多傳遞了不必要的參數,這時可以rewirte功能去掉多餘的參數;另外也可以添加請求必須而暫時無法提供的參數

response status: 很少用到,顧名思義就是對response的狀態碼進行rewrite



作者:葶寳寳
鏈接:https://www.jianshu.com/p/82f48d5beee5
來源:簡書
著作權歸作者所有。商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章