browser.devtools.network

说明

使用 chrome.devtools.network API 检索开发者工具在“网络”面板中显示的有关网络请求的信息。

网络请求信息以 HTTP 归档格式 (HAR) 表示。HAR 的说明不在本文档的讨论范围内,请参阅 HAR v1.2 规范。

就 HAR 而言,browser.devtools.network.getHAR() 方法会返回整个 HAR 日志,而 browser.devtools.network.onRequestFinished 事件会提供 HAR 条目作为事件回调的参数。

请注意,出于效率考虑,HAR 中不提供请求内容。您可以调用请求的 getContent() 方法来检索内容。

如果在页面加载后打开“开发者工具”窗口,则 getHAR() 返回的条目数组中可能会缺少某些请求。重新加载页面以获取所有请求。一般来说,getHAR() 返回的请求列表应与“网络”面板中显示的请求列表一致。

如需简要了解如何使用开发者工具 API,请参阅开发者工具 API 摘要。

清单

必须在清单中声明以下键,才能使用此 API。

"devtools_page"

示例

以下代码会在加载大于 40KB 的所有图片时记录其网址:

browser.devtools.network.onRequestFinished.addListener(
  function(request) {
    if (request.response.bodySize > 40*1024) {
      browser.devtools.inspectedWindow.eval(
          'console.log("Large image: " + unescape("' +
          escape(request.request.url) + '"))');
    }
  }
);

如需试用此 API,请从 chrome-extension-samples 代码库中安装 devtools API 示例。

类型

Request

表示对文档资源(脚本、图片等)的网络请求。如需参考,请参阅 HAR 规范。

属性

  • getContent

    void

    返回响应正文的内容。

    getContent 函数如下所示:

    () => {...}

    • 返回

      Promise<object>

      Chrome 151 及更高版本 browser.*(自 Chrome 152 起)

      一个在请求完成时接收响应正文的函数。

方法

getHAR()

browser.devtools.network.getHAR(): Promise<object>

返回包含所有已知网络请求的 HAR 日志。

返回

  • Promise<object>

    Chrome 151 及更高版本 browser.*(自 Chrome 152 起)

    在请求完成时接收 HAR 日志的函数。

事件

onNavigated

browser.devtools.network.onNavigated.addListener(
  callback: function,
)

当被检查的窗口导航到新页面时触发。

参数

  • callback

    函数

    callback 参数如下所示:

    (url: string) => void

    • 网址

      字符串

onRequestFinished

browser.devtools.network.onRequestFinished.addListener(
  callback: function,
)

在网络请求完成且所有请求数据都可用时触发。

参数

  • callback

    函数

    callback 参数如下所示:

    (request: Request) => void