• 实用 | 盘点抓包修改响应结果的 2 种方式


    在工作中,我们经常需要针对某个接口修改其响应值,以此改变 App 或浏览器实际的渲染结果

    本篇文章将以 Charles + Chrome 浏览器为例,讲解修改响应结果常用的 2 种方式

    1. 断点 Breakpoints

    这种方式很简单,具体操作步骤如下

    具体步骤如下:

    1-1 打开 Charles 并选中 Windows Proxy

    Windows Proxy 相当于开启整个系统通过 Charles 作为代理,所以能正常抓取浏览器的数据包

    图片

    1-2 抓包并对目标接口开启断点

    正常利用 Charles 进行抓包,选中目标接口(以登录接口为例),右键开启断点

    图片

    1-3 再次调用接口,修改响应值

    再次抓取到登录接口时,Charles 会在请求、响应时断点展示,我们可以对「 请求头、请求体、响应头、响应体 」进行二次编辑

    图片

    在编辑窗口修改响应结果后,点击右下角的「 Execute 」按钮就可以将修改后的结果返回给前端进行渲染

    这样,就完成了针对某个接口响应结果的修改

    2. Map Local Settings

    第一种方式虽然操作简单,但是如果接口设置的超时时间很短,在断点窗口中修改响应结果不一定来得及

    Map Local Settings 相当于将本地文件数据作为响应值进行返回

    具体操作步骤如下:

    2-1 正常抓包并保存响应值并进行二次编辑

    使用 Charles 正常抓包,右键选择登录接口将响应数据以 JSON 格式保存到本地,然后对响应结果文件进行二次编辑

    图片

    2-2 查看同接口OPTIONS 请求方式的响应头(可选)

    为了避免 CORS 跨域异常,如果登录接口会同时发送一个 OPTIONS 请求,我们需要查看该请求的响应头

    图片

    然后重写请求头,将上面 4 项追加到响应头中去(具体配置参考2.3)

    2-3 Rewrite Settings(可选)

    操作路径:Tools - Rewrite - Enable Rewrite

    点击 Add 按钮,在右侧编辑区域添加对应的 Location 及 Rewrite Rule

    图片

    需要注意的是,Rewrite Rule 追加响应体时,应该勾选上 Response 和 Replace first

    2-5 配置 Map Local Settings 并开启

    操作路径:Tools - Map Local - Enable Map Local

    点击 Add 按钮,新增一个本地响应匹配信息链,将接口地址与本地响应文件的完整路径输入进去

    图片

    2-6 测试一下

    经过上面配置后,重新调用登录接口,本地数据会作为响应值返回回去

    最后: 为了回馈铁杆粉丝们,我给大家整理了完整的软件测试视频学习教程,朋友们如果需要可以自行免费领取 【保证100%免费】
    在这里插入图片描述

    在这里插入图片描述

  • 相关阅读:
    数字文档管理对您的业务是否具有成本效益?
    springMVC02之CRUD和文件上传下载
    flutter笔记-主要控件及布局
    【外企面试系列】必备口语短语与例句 - BC系列
    JavaScript:实现AvlTree树算法(附完整源码)
    这波服装设计作品对女性美的诠释,十分到位
    Mobx 数据通信
    SpringBoot的数据库连接池
    c++ 的map、iterator用法
    Convert转换学习
  • 原文地址:https://blog.csdn.net/wx17343624830/article/details/127454523