gpt4 book ai didi

google-chrome-extension - 如何在不实际打开 DevTools 窗口的情况下访问 DevTools API?

转载 作者:行者123 更新时间:2023-12-05 01:20:39 28 4
gpt4 key购买 nike

documentation说“每次打开 DevTools 窗口时都会创建扩展的 DevTools 页面实例。DevTools 页面在 DevTools 窗口的生命周期内存在。”

然而,Facebook Pixel Helper设法在没有打开 devtools 窗口的情况下获取网络信息。

所以,我想知道是否有其他 API 或解决方法可以从 DevTools 窗口访问内容(特别是网络选项卡,Facebook 似乎能够做到这一点)。

最佳答案

如果不打开 devtools 窗口,则无法使用 chrome.devtools API。 Facebook 像素助手使用 chrome.webRequest用于获取有关网络请求的信息的 API。此 API 不提供对响应主体的任何访问,因此这不是特别有用。

还有一些更(强大)的方法,FB Pixel Helper extension 未使用这些方法 :

  • chrome.debugger只要 devtools 窗口未打开,API 允许您执行 devtools 能够执行的几乎所有操作,包括查询响应主体。在下面的解释中,我假设您已经连接到调试器。如果您不知道如何操作,请参阅 this answer举个例子。

    1. chrome.debugger.onEvent 添加监听器
    2. 发送Network.enable命令开始监听事件。
    3. 当请求完成时,将触发onEvent 事件,方法名称设置为Network.responseReceived。事件参数包括请求/响应 header 、状态行等。如果您还想获取响应主体,请调用 Network.getResponseBody 命令来获取响应主体。

    对于其他网络事件/命令,请参阅 debugging protocol specification for network .

  • Content scripts可以使用 performance.timing用于查询(顶级/子)框架中文档加载时间的 API。

关于google-chrome-extension - 如何在不实际打开 DevTools 窗口的情况下访问 DevTools API?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30557513/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com