charles如何修改请求参数-rewrite

charles如何修改请求参数-rewrite,第1张

1. charles菜单栏,Tools-Rewrite,点add

 2. 起个名字,方便自己看

3.在location区域,点add,输入URL,如果忽略port就填*

4. 点add,给请求添加一个参数

5. 保存即可。下次app请求时,会自动加上添加的参数。

修改参数时有两种方式:

(1)modify query param  是修改原有的请求参数

(2)add query param  是在原有请求参数后追加参数

原文:http://www.bubuko.com/infodetail-3580392.html

目录

Map、Rewrite、Breakpoints的区别

如何使用Rewrite修改网络请求

        1.修改Header

        2.修改Body

            修改requests的Body

            修改response的Body

        3.修改query param

        4.修改url

正文

一、Map、Rewrite、Breakpoints的区别

Charles提供了Map功能、Rewrite功能、Breakpoints功能,都可以达到修改服务器返回内容的目的,这三者的差异是:

Map功能适合长期的将某些请求重定向到另一个网络地址或本地文件

      Map Local功能:将请求的返回重定向到本地文件中

      Map Remote功能:将请求的域名重定向到一个网络地址

Breakpoints功能适合做临时性的修改,request和response都支持修改

Rewrite功能适合对网络请求进行一些正则替换

二、如何使用Rewrite修改网络请求

1.修改Header

例如修改cookie

1)打开Rewrite

2)添加请求

3)添加修改的类型

完成后,抓包查看之后API的变化,如下图所示

2.修改Body

修改requests的Body

你要修改的请求内容是json数据时,就选择修改Body

配置方法如下图,将json数据直接粘贴过来修改

修改response的Body,下图是需要匹配的内容

所需要替换的内容中有空格,直接在charles中敲入空格的话,匹配不到,需要用到正则表达式才可匹配,/s表示空白字符(空格、换行、tab缩进等),*代表0个或多个

3.修改query param

如何查看你要修改的是否是query param?下图中,你要修改数据在query string中的时候,就要修改query param

4.修改url

附录:

正则可视化工具 https://regexper.com/

Charles有一个强大的功能,可以复写接口请求和返回。我这次遇到的一个用法就是给请求加上headers。最近开发一个前端展示页面,需要在手机真机上调试兼容性,但是这个页面的访问接口请求需要登录,也就是需要headers,怎么办呢?用到的就是Charles的rewrite功能。

话不多说,直接上图:

1、tools -->Rewrite

2-1、添加设置:

2-2:添加请求:

2-3:添加复写规则:

3、点击应用就可以了:

然后在手机上访问此匹配的请求,就会自动加上headers。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11285610.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存