1. 程式人生 > >Chrome瀏覽器外掛之篡改HTTP的Head

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:
在這裡插入圖片描述