首页 > 科技 > HTTP抓包利器Fiddler基础及进阶(四)修改请求和响应+FiddlerCore

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微技术

本文来自投稿,不代表本人立场,如若转载,请注明出处:http://www.sosokankan.com/article/1892521.html

setTimeout(function () { fetch('http://www.sosokankan.com/stat/article.html?articleId=' + MIP.getData('articleId')) .then(function () { }) }, 3 * 1000)