Charles 重写

之前介绍过 Charles 修改请求或者响应的两个功能,分别是 Map、Breakpoints 。

Charles 重定向 、Charles 断点拦截、篡改请求和响应

今天再来介绍下另一个修改请求和响应的功能 Rewrite。

 

1、Map、Breakpoints和Rewrite 有什么区别?

1)Map:可以持久化重定向

      Map Local功能:将请求的返回重定向到本地文件中,只能修改响应,适合设置返回固定的响应内容

      Map Remote功能:将请求的域名重定向到一个网络地址,只能修改请求,适合系统不同环境之间切换

2)Breakpoints:请求和响应都支持修改,但只适合临时修改,尤其对于一些设置超时时间的网址,就只适合手速党了

3)Rewrite:请求和响应都支持修改,支持多类型持久化重写,支持正则匹配

 

2、Rewrite 怎么设置?

菜单栏 Tools - Rewrite

 

 

3、Rewrite 支持的重写类型有哪些?

1)修改 header:Modify Header

比如,将 header 中的 user-agent 替换为 google

 

2)增加 header:Add Header

比如,将header 中增加 Origin,值为http://10.10.10.10:8080

 

3)删除 header:Remove Header

比如,将user-agent 删除

 

4)重写请求Host:Host

比如,将请求的Host 修改为 10.60.20.140:8080,相当于重定向  Map Remote

 

5)重写请求path:Path

例如,将分页请求重写为请求全部数据

 

6)重写请求url:Url

例如,将请求csdn 的文章ID由114284972 修改为1111111

 

7)增加请求参数:Add Query Param

例如,在请求中增加请求参数 test,值为 test

 

8)修改请求参数:Modify Query Param

例如,将分页请求20条数据修改为1条

 

9)删除请求参数:Remove Query Param

例如,将分页请求中限制每页数量的 limit 参数删除

 

10)重写响应状态:Response Status

例如,将响应状态由 200 改为 500

 

11)重写请求或响应体:Body

例如,将响应中的‘小组’全部替换为‘测试’

 

 

Charles是一款用于网络调试和分析的工具,它可以拦截和查看应用程序与服务器之间的网络通信。它的工作原理如下: 1. 代理服务器:Charles作为一个代理服务器,它在应用程序和服务器之间充当中间人的角色。当应用程序发送请求时,请求会先经过Charles,然后再由Charles将请求发送给服务器。 2. SSL证书:为了能够查看HTTPS通信,Charles会生成一个自签名的SSL证书,并将其安装到设备上。这样,当应用程序与服务器进行HTTPS通信时,Charles可以解密和查看通信内容。 3. 拦截和记录:Charles可以拦截应用程序发送的请求和服务器返回的响应,并将其记录下来。这样可以方便开发人员查看和分析网络通信的细节,包括请求头、响应头、请求体、响应体等信息。 4. 修改和重发:除了拦截和记录,Charles还可以修改请求和响应。开发人员可以在Charles中修改请求头、请求体、响应头、响应体等内容,并将修改后的请求或响应重新发送给服务器或应用程序。 5. 过滤和断点:Charles提供了过滤和断点功能,可以根据条件过滤出特定的请求或响应,并在特定的请求或响应上设置断点,以便于调试和分析。 6. 映射和重写Charles还支持映射和重写功能,可以将特定的请求或响应映射到其他的URL,并可以对请求或响应进行重写,以便于模拟不同的场景和测试。
评论 41
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值