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

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

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

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

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

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

會在請求的
header
中添加
userid
屬性。
注:Match欄的name和value值如果不填會匹配所有的請求,如果有值,則去匹配有改鍵值的請求。
三、修改path
主要rewrite path
內容使用指定rewrite
規則的path
來響應指定的請求path
,它可以對path
進行裁剪

請求的結果如下:

四、其他
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
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。