HTTP抓包利器Fiddler基础及进阶教程(四)---- 修改请求和响应+FiddlerCore使用

本文将进一步介绍Fiddler的进阶功能,修改Http请求或响应,并使用FiddlerCore将其应用在代码当中。

一.修改Http请求

使用Fiddler,将原本访问地址 https://blog.csdn.net/qq_29556507 的请求修改为访问http://vip.rs1314.cn。

以谷歌浏览器为例,正常情况下访问我的博客列表页如下图:

 

 

1.懂开发的,都知道debug,看下图....即在请求发起前自动断点

2.

触发请求并查看断点,这就是去浏览器请求一下我的那个博客,或者你要抓取的网站

 

修改请求并继续执行请求

修改完毕后,点击Go按钮继续执行,由于这个自动断点会你的所有请求都生效,所以修改完毕后可以先把自动断点去掉,回到浏览器页面可以看到请求的页面已经被修改

 

 

 

FiddlerCore代码实现

首先从官网下载FiddlerCoreAPIhttps://www.telerik.com/purchase/fiddlercore
查阅手册,看几个关键的方法和变量:
//获得Request体
oSession.GetRequestBodyAsString()      
//获得Response内容
oSession.GetResponseBodyAsString()
 // 修改session中的显示样式
 oSession["ui-color"] = "orange";
 // 移除http头部中的MQB-X5-Referer字段
 oSession.oRequest.headers.Remove("MQB-X5-Referer");
 // 修改http头部中的Cache-Control字段
 oSession.oRequest["Cache-Control"] = "no-cache";
 // 修改host
 oSession.host = "example.domain"; 
 // 修改Origin字段
 oSession.oRequest["Origin"] = "http://domain";
 // 删除所有的cookie
 oSession.oRequest.headers.Remove("Cookie");
 // 新建cookie
 oSession.oRequest.headers.Add("Cookie", "username=cookiename;");
 // 修改Referer字段
 oSession.oRequest["Referer"] = "https://yoururl";
 拦截websockets请求

FiddlerCore是Fiddler官方提供的DLL类库,封装了Fiddler一系列API,使用此类库可以在代码中实现以上及更多的功能

//在发送请求之前执行的操作   Fiddler.FiddlerApplication.BeforeRequest += delegate (Fiddler.Session oS){  if (checkBox1.Checked)    {    //实现修改请求目标的功能      if (oS.fullUrl.Contains("https://blog.csdn.net/qq_29556507"))       {          oS.fullUrl = "http://vip.rs1314.cn/";        }      }};

微信公众号同号   java微技术

 

 

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值