Charles Rewrite的各种用法实例详解

目录

一、简介

二、使用方法


一、简介

  1. 背景:当我们在测试过程中,对于一些特定接口需要进行数据mock返回,并且Breakpoints(可能会超时)、Map Local Settings(无法处理动态数据)无法满足场景使用时,我们可以通过Rewrite来重写返回数据
  2. 功能入口

二、使用方法

  1. 新建规则
  2. 配置接口
    1. 我们以百度翻译网站为例子“百度翻译”,输入“测试输入”,翻译后结果为“Test input”
    2. 查看接口
    3. 配置接口路径
      1. 方法一(精准匹配)
      2. 方法二(匹配所有这个域名下的请求)
      3. 方法三(匹配所有这个域名下,接口路径以v2开头的请求)
          
  3. 配置规则
    1. Add Header(添加请求头)

    2. Modify Header(修改请求头)
      1. Accept-Language zh-CN,zh;q=0.9

        改为

        Accept-Language en-US,zh;q=1.5

      2.  

    3. Modify Header(利用正则修改请求头中某个参数的的部分value值)

      1. Cookie BIDUPSID=AE3038A1E6D07FFA942F32369B7C92DA; PSTM=1636452484; .............

        中的PSTM改为10086

    4. Remove Header(删除请求头)
      1. Referer 百度翻译-200种语言互译、沟通全世界!

        删除

    5. Host(修改域名)
    6. Path(修改路径)
      1. 将/v2transapi改为/v3transapi

        PS:两种方法都可以实现
        • 左侧是通过"(.*)"正则提取出来的变量,以"$1"的形式放到replace后面,如果不加$1,变量就会丢掉;
        • 右侧则是模糊匹配,*号匹配到的内容会默认加到replace末尾;
    7. URL(修改地址)
    8. Add Query Param(增加请求参数)
    9. Modify Query Param(修改请求参数)
    10. Remove Query Param(删除请求参数)
    11. Response Status(修改响应状态码)

    12. Body(修改请求体)
      1. PS:Value来源与Copy Request
        from=zh&to=en&query=%E6%B5%8B%E8%AF%95%E8%BE%93%E5%85%A5&transtype=translang&simple_means_flag=3&sign=804390.566551&token=73d40d202518beb0d9eaa0baf15e0b36&domain=common

        

    13. Body(修改响应体)
      1. "dst": "Test input",

        改为

        "dst": "Test output",

       


       

努力只能及格,拼命才能优秀~

猜你喜欢

转载自blog.csdn.net/yaoliang_cui/article/details/127809235