javascript - 获取 Chrome A 扩展中选定选项卡发出的所有 WebRequest

标签 javascript html google-chrome google-chrome-extension tabs

我想获取选项卡发出的所有网络请求并将其显示在 popup.html 上。

但是我面临的问题是。例如。我在第一个选项卡中打开了一个网站,现在我切换到第二个选项卡并打开另一个网站,然后切换回第一个选项卡。因此,现在当我切换回第一个选项卡时,在切换选项卡之前,如何获取该网站之前在第一个选项卡中完成的所有 Web 请求。因此,当我切换到第一个选项卡时,它必须再次加载。

我使用下面的代码来获取所选选项卡请求

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

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

      console.log(details);

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

最佳答案

  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);
        }
    });
    

关于javascript - 获取 Chrome A 扩展中选定选项卡发出的所有 WebRequest,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32086982/

相关文章:

javascript - Angular2 : Directive variable change, 更新元素

javascript - 用于客户端 Web 应用程序的开发/构建工具

javascript - pre 中的代码在 IE8 上排成一行

javascript - 在对象的特定标题 <th> 下插入表格 <td> 单元格

javascript - Chrome 扩展按钮

javascript - 一种制作实时画中画的方法

selenium - 是否存在无法检测到的Selenium WebDriver版本?

javascript - Jasmine 测试认为数据没有被正确解析

javascript - Typescript:动态设置变量类型

javascript - 仅包含图像的目标段落