之前一直用postman调接口比较多,但有时候想要去修改APP的页面展示,造数据又会比较麻烦,此时可以用以下三种方法修改请求参数或修改响应:
  map Local(本地映射)、Breakpoints(打断点)、Rewrite(重写)
MAP重定向:
  Charles 的map功能,就是将某个请求进行重定向,然后用重定向后的内容来修改请求内容;map又分Map Remote和Map Local,Map Remote 是将指定的网络请求重定向到另一个网址Map Local 是将指定的网络请求重定向到本地文件。
  map Local:只能修改返回数据
  Rewrite:可修改接口的请求和响应
  Breakpoints:可以修改该接口的请求和返回数据,在响应时间内。
 

一、Map Local

  Map Local的使用场景,要验证接口返回数据的各种场景,使用本地映射可以修改请求接口的response。
 
  1.1  保存接口响应:右键-->save response-->保存到本地路径(最好为json格式)
  
  1.2 右击选择Map local:点击接口-->右键-->Map Local进入Map Edit页面
  
  1.3  配置Map Local Map To本地文件:Edit Mapping-->Map To选择你保存到本地已修改的json文件
  • protocol:接口协议
  • Host:接口URL粘进去,自动分解到host与path文本框中
  • port:*(匹配全部)
  • Query: *(匹配全部)
    
  
       1.4 再次请求接口,接口返回response已经变成本地json文件的值。完成~
 
  1.5  关闭Map Local:点击charles工具栏中的工具,取消map Local勾选,即将本地映射关闭
 
二、Rewrite  
  Rewrite:可用于修改请求(​request​)和返回(​response​)的​modify​工具
  1. 打开charles,点击菜单栏tools-->Rewrite

   

  1. 弹出Rewrite Settings界面,选择​Enable Rewrite​,点击​Add​,此时会出现一个​Unitled Set​
      • Enable Rewrite:允许使用Rewrite
      • Add-Name:支持修改被篡改的接口的名称

  

  3. 点击​Location​下方的​Add​,出现二级界面

      • 选择自己需要的​Protocol​(​http/https​)
      • 放入需要访问的接口地址​api​,会自动将URL的内容分解host和path文本框中
      • ​Port​和​Query​改为*(也可自定义)

  

  4.篡改规则:点击下方的第二个add,填写重写规则
      • Type: 重写的类型,可以选择url/body等
      • where:选择修改request或reponse
      • Match--Value:匹配现有的值(支持正则匹配)
      • Replace:替换值
      • Replace first:仅替代掉第一个被匹配的值
      • Replace all:替代到所有被匹配的值

  5. 重新刷下接口,可以看到APP数据已修改为替换值,完成~

charles技能之修改请求参数/返回数据(map Local、Rewrite、Breakpoints)的更多相关文章

  1. Fiddler修改请求、返回数据

    相信你们有听过说“绕过前端”,但是可能想不到要怎样才能绕过前端呢? 首先,我们要知道什么是绕过前端?比如:登录用户名限制数字.6位,用户在登录页面填写用户名符合要求,使用Fiddler作为代理,拦截登 ...

  2. charles抓包修改请求参数发送新的请求

    打开charles -->选择请求右击选择compose---修改参数发送请求

  3. charles 模拟手机弱网、修改请求参数、修改返回值

    1.charles模拟弱网(断网) 2.charles修改请求参数 (1)先访问一次需要改的请求,在charles上找到相应的请求地址 (2)然后在需要打断点的请求上右键,勾选[Breakpoints ...

  4. 使用HttpServletRequestWrapper修改请求参数 和 使用HttpServletResponseWrapper截获响应数据

    Servlet规范中的Filter引入了一个功能强大的拦截模式.Filter能在request到达servlet的服务方法之前拦截request对象,而在服务方法转移控制后又能拦截response对象 ...

  5. Fiddler实现篡改接口请求和返回数据

    步骤如下: 点击rules->Automatic Breakpoints,在这个选项下,我们可以看到三个可选项: Before Requests:在请求发出前拦截请求: After Reques ...

  6. fidder设置断点,修改请求参数等

    设置断点(来自:http://jingyan.baidu.com/article/17bd8e52216c8d85ab2bb8e9.html): 可以看到当前有一个抓取的很多的包的链接的地址的信息,那 ...

  7. Fiddler之模拟响应、修改请求或响应数据(断点)

    在测试过程中,有时候需要修改请求或响应数据,或者直接模拟服务器响应,此时可以使用fiddler进行此类操作.可以使用断点功能完成. 一.修改请求数据 在发起请求后,需要修改请求的数据时,可以设置请求前 ...

  8. asp.net core 使用中间件拦截请求和返回数据,并对数据进行加密解密。

    原文:asp.net core 使用中间件拦截请求和返回数据,并对数据进行加密解密. GitHub demo https://github.com/zhanglilong23/Asp.NetCore. ...

  9. fiddler修改请求参数

    1.打开fiddler ,点击界面左侧左侧底部 2.此图标为before request请求(修改请求参数时,设置这个,可以修改请求参数) 3..再次点击该按钮,将图标切换到下图after respo ...

随机推荐

  1. 多Y轴图的尝试

    最近的一篇文章中需要绘制多Y轴图形,Excel只能做双Y轴图,又尝试了Origin,SigmaPlot,Igor等软件,手动做起来相当繁琐,批量做更是觉得费劲,干脆尝试在MeteoInfoLab里实现 ...

  2. c++11 R+字符串

    R+字符串 prefix(optional) R"delimiter(raw_characters)delimiter" (6) (since C++11) C++11引入了原始字 ...

  3. 【C语言教程】“双向循环链表”学习总结和C语言代码实现!

    双向循环链表 定义 双向循环链表和它名字的表意一样,就是把双向链表的两头连接,使其成为了一个环状链表.只需要将表中最后一个节点的next指针指向头节点,头节点的prior指针指向尾节点,链表就能成环儿 ...

  4. 阅读-Calibre Library转PDF、EPUB配置

    提示:如果想恢复默认设置,点击"恢复默认值"即可 -----EPUB (MOBI同理)----- 目标:解决转换过程中图片清晰度丢失问题(分辨率太低) 右击-转换书籍-逐个转换 输 ...

  5. go 协程阻塞

    func main() { wg.Add(2) go test1() go test2() wg.Wait() } func test1() { defer wg.Done() for i:=0;i& ...

  6. Python之for循环和列表

    for循环: 有限循环 基本语法: for 变量 in 可迭代对象: 循环体 也可使用break,continue,for else list列表初识: 列表可放任意数据类型:[int,str,boo ...

  7. APP后台架构开发实践笔记

    1 App后台入门 1.1 App后台的功能 (1)远程存储数据: (2)消息中转. 1.2 App后台架构 架构设计的流程 (1) 根据App的设计,梳理出App的业务流程: (2) 把每个业务流程 ...

  8. 判断app访问还是web访问网站

    function IsPC() { var userAgentInfo = navigator.userAgent; var Agents = ["Android", " ...

  9. java数据结构-07栈

    一.什么是栈 栈是一种线性结构,栈的特点就是先进后出(FILO):就像弹夹装子弹一样,最先压进去的在最底下,最后才被射出.  二.相关接口设计  三.栈的实现 栈可以用之前的数组.链表等设计,这里我使 ...

  10. uniapp swiper高度自适应问题

    这里的话是想做一个比较常见的左右滑动更改tab的效果,引用了uview-ui中的u-tabs-swiper组件,需要结合swiper组件来使用 先来讲下主体思路:每个tab页(swiper-item) ...