Chrome浏览器插件之篡改HTTP的Head

参考文章,定制HTTP请求响应头域:https://segmentfault.com/a/1190000011997656#articleHeader7

通过上一篇博客Chrome 浏览器插件之监控网页地址,我们队chrom浏览器插件已经有了一个基本了解了,那么下面我们将增加一个新需求?统计页面跳转源,也就是http 的Header里面的一个字段:Referer,如果请求包头不存在的时候我们就增加这个字段。

所以我么参考定制HTTP请求响应头域这篇文章,我们知道我们需要在请求头发送的时候拦截和修改,所以我们在background.js里面增加如下事件:

// 在web请求头里面增加reffer字段
chrome.webRequest.onBeforeSendHeaders.addListener(
  function(details) 
  {
	var bfind = false;
    for (var i = 0; i < details.requestHeaders.length; ++i) 
	{
      if (details.requestHeaders[i].name === 'Referer' ||
		details.requestHeaders[i].name === 'referer')
		{
			//bfind = true;
			//details.requestHeaders[i].value = 'test demo';
        break;
      }
    }
	
	//if(!bfind)
	//{
	//	var obj = new Object();
	//	obj.name = "Referer";
	//	obj.value = 'test demo111';
	//	details.requestHeaders.push(obj);
	//}
		
    return {requestHeaders: details.requestHeaders};
  },
  {urls: ["<all_urls>"]},
  ["blocking", "requestHeaders"]);

此时我们可以使用winshark抓取分析头部里面的Referer:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/CAir2/article/details/83620005
今日推荐