Charles之修改请求、返回信息

原创: George555    公众号: 测试江湖路  

如果这些内容对你有帮助,也可以打开微信扫一扫,加关注:

 

    之前一直苦恼着,怎么修改接口返回值内容,来模拟一个虚拟假接口协议,供当前业务系统接口配合使用。后来经过查资料,翻百度,发现一个很好用的方法,在这里总结下,防止久而忘之。

    修改返回值常用的有3种方法:

    1.Map Remote:远端映射,把指定的网络请求(From)重定向(To)到另一个网址上

    2.Map Local:本地映射,把指定的网络请求(From)重定向(To)到本地文件上

    3.Rewrite:把网络请求进行一下正则替换,可以匹配多个请求

    说明:经过这样的重定向后就可以实现,当触发真实业务接口时,只有遇到此处重定向的接口时,会替换掉已重定向接口的请求或返回内容。其他接口还是系统已有的接口。

一、Map Remote:

    进入Tools-Map Remote后,弹出如下窗口:

勾选Enable Map Remote-点Add,弹出如下图:

a.Map From:填入你指定的需要修改返回值内容的原始接口信息(http/https、Host、Port、Path、Query)

说明:原始接口信息可以通过在指定接口上右键-选择Viewer Mappings来获取,如下图:

b.Map To:填入你要模拟的虚拟接口的信息的请求部分。当然此接口必须真实可以访问。

特殊说明:比如利用moco手段模拟的接口,这样对应的返回值部分将在moco的接口中提现,如果要修改返回值内容,将moco中的接口返回值进行修改即可。

二、Map Local:

进入Tools-Map Local后,弹出如下窗口:

勾选Enable Map Local-点Add,弹出如下图:

a.Map From:填入你指定的需要修改返回值内容的原始接口信息(http/https、Host、Port、Path、Query) 。原始信息获取同Map Remote方式相同

b.Map To:选择本地存在的接口返回值文件。

说明:返回值文件生成通过以下方式:

接口上右键-Save Response

三、Rewrite:

进入Tools-Rewrite后,弹出如下窗口:

勾选Enable Rewrite后点Add,如下图:

Location-Add点击后,如下图:

此功能同Map Remote/Map Local里的Map From配置类似。

在Rules板块点Add,如下图:

此处是需要修改返回值,模拟的正则匹配规则配置。

Type中有如下选项:

    Add Header

    Modify Header

    Remove Header

    Host:修改域名 (最近项目中用到了这个,把所有请求域名都给换掉了)

    Path

    URL

    Add Query Param

    Modify Query Param

    Remove Query Param

    Response Status

    Body

说明:表示可以用正则匹配方式替换这些类型中的信息。然后再发送请求出去。

 

【示例1】:遇到Locations中指定接口返回值中有“测试”两个字的 全部替换成 “修改测试后”。如果未指定Locations,则对所有接口起作用

 

【示例2】:修改请求的域名

    Type中选择Host,Match的value中输入需要替换的原接口域名。

Replace中的value输入新域名即可。点ok后点Apply结束。下图则是业务app发出的请求:

    Notes中显示Rewrite Tool: oldhost.com" => "newhost.com"

 

 

#####欢迎大家加群交流####

微信群请先加群主微信,群主会拉各位小伙伴进群。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用Charles拦截请求修改返回参数,可以按照以下步骤进行操作: 1. 首先,在Charles的左侧面板中找到你想要拦截的接口。 2. 右键点击该接口,选择"Breakpoints"(断点)。 3. 刷新页面,重新发送该接口的请求,这样Charles就能够拦截到该请求。 4. 在Charles中,你会看到刚刚拦截的接口。 5. 可以修改参数、请求头等内容。然后点击下方的"Execute"(执行)按钮。 6. 这样就会发起请求,并且响应会被拦截下来。此时页面的接口仍然处于请求中的状态。 7. 点击Charles中的"JSON-text",可以修改返回的内容。再次点击"Execute"按钮。 8. 这样就完成了主要流程,页面的请求也完成了,返回的内容就是你修改过的内容了。 通过以上步骤,你可以使用Charles拦截请求修改返回参数。\[1\] #### 引用[.reference_title] - *1* [Charles基本使用、请求响应拦截并修改返回](https://blog.csdn.net/weixin_45629623/article/details/119522699)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [fiddler和charles拦截并修改请求返回值](https://blog.csdn.net/weixin_57805858/article/details/125762830)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值