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
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)