Charles 修改接口返回数据

本文介绍了Charles如何通过MapRemote、MapLocal和Rewrite功能灵活地修改网络请求的返回数据,包括重定向、本地文件替换和正则表达式替换,帮助开发者高效测试和调试接口。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言
   测试中,我们经常会遇到一些边界值数据很难造出来,首先能想到的是能否可以模拟这些场景,以覆盖case,这时经常需要修改接口请求或者返回数据。在我之前的文章有介绍如何通过打断点的方式进行修改,但这会有个问题,即如果客户端一方长时间得不到响应(手工修改响应数据包时,造成客户端超时未收到服务器回答),有些网站就会重新发送新的数据连接。为避免这一情况发生,可以使用Charles其他修改小工具。Charles还提供了 Map Remote、Map Local、及Rewrite功能,都可以达到修改服务器返回内容的目的,三种的区别分别是:
  1.Map Remote是将指定的网络请求重定向到另一个网址上
  2.Map Local是将指定的网络请求重定向本地文件上
  3.Rewrite是对网络请求进行一下正则替换

1.Map Remote

   选择指定接口链接,右键选择 Map Remote
在这里插入图片描述
进入Map Remote Setting页面,在Map To中设置好要重定向的地址即可,如下图
在这里插入图片描述
设置之后,重新请求该接口,我们会发现返回的response已经是重定向的数据了;

2.Map Local

   选择指定接口链接,右键选择Save Response,将返回的数据保存到本地;然后修改保存的本地数据,再在刚指定的链接上,右键选择Map Local…,进入Map Local Setting页面,直接上传修改后的本地文件即可,如下图: 
在这里插入图片描述
重新访问接口,会发现接口返回数据已经发生变化,返回的是自己刚修改的本地数据值;

3.Rewrite

   如果可以直接对某个值进行正则验证,菜单选择【Tools】→【Rewrite】,在打开的对话框中勾选【Enable Rewrite】复选框,在左侧栏点击【Add】,如
在这里插入图片描述
在这里插入图片描述
点击该设置对话框右上方的编辑框的【Add】按钮,添加将要篡改的URL,同样点击右下方的【Add】按钮,选择篡改HTTP的哪个部分、输入匹配的值和替换的值。如
在这里插入图片描述
对接口返回的json格式内容的一个key-value对进行了替换。对于value为空的字段,我们要写作null,如"name":null。这样当接口数据返回时,如果匹配指定字符,则会进行替换。

回答: 根据引用引用的内容,charles可以通过修改返回数据来达到测试的目的。具体的操作步骤如下: 1. 在Charles中选择要设置断点的接口,并右键选择Breakpoints进行配置。 2. 打开断点配置页面,双击已设置的断点接口进行进一步设置。其中2/3分别表示请求返回数据。 3. 在返回数据的部分,可以对其进行修改。可以根据需要修改返回数据内容。 4. 修改数据后,点击Execute执行修改后的请求,即可查看修改过后的请求返回的效果。 通过上述步骤,可以在charles修改返回数据,以达到测试的目的。希望对您有所帮助。123 #### 引用[.reference_title] - *1* *3* [Charles断点修改返回数据](https://blog.csdn.net/laozhu_Python/article/details/119712962)[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^v92^chatsearchT3_1"}} ] [.reference_item] - *2* [charles修改接口入参或返回结果的4种方法](https://blog.csdn.net/DZY_12/article/details/121357799)[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^v92^chatsearchT3_1"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值