获取Chrome A扩展中所选标签所做的所有WebRequest

时间:2015-08-19 05:12:18

标签: javascript html5 google-chrome google-chrome-extension tabs

我想获取标签发出的所有网页请求,并将其显示在popup.html上。

但我面临的问题是。例如。我在第一个标签中打开了一个网站,现在我转到第二个标签并打开另一个网站并转回第一个标签。所以现在当我转回第一个标签时,如何在移动标签之前获得该网站在第一个标签中完成的所有网页请求。因此,当我切换到第一个标签页时,必须再次加载。

我使用下面的代码来获取所选标签请求

chrome.tabs.getSelected(null, function(tab){ 

    chrome.webRequest.onBeforeSendHeaders.addListener(function(details) {

      console.log(details);

    }, {
    urls: ["<all_urls>"]
});

1 个答案:

答案 0 :(得分:0)

  1. tabs.getSelected为deprecated,因为Chrome 33使用tabs.query

    var myTabId;
    chrome.tabs.query({currentWindow: true, active: true}, function(tabs) {
        myTabId = tabs[0].id;
    });
    
  2. onBeforeSendHeaders的回调中检查tabId

    chrome.webRequest.onBeforeSendHeaders.addListener(function(details) {
        if (details.tabId == myTabId) {
            console.log(details);
        }
    });