chrome.devtools.network

refresh date: 2026-09-25 robots: noindex

说明

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

清单

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

"devtools_page"

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

概览

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

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

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

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

示例

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

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

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

类型

Request

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

属性

  • getContent

    void

    Promise

    返回响应正文的内容。

    getContent 函数如下所示:

    (callback?: function) => {...}

    • callback

      函数 可选

      callback 参数如下所示:

      (response: object) => void

      • Response

        对象

        Chrome 151 及更高版本

        一个包含响应正文及其编码的对象。

        • 内容

          字符串

          响应正文的内容(可能已编码)。

        • encoding

          字符串

          如果内容未编码,则为空;否则为编码名称。目前只支持 base64。

    • 返回

      Promise<object>

      Chrome 151 及更高版本

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

      仅 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。

方法

getHAR()

Promise
chrome.devtools.network.getHAR(
  callback?: function,
)
: Promise<object>

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

参数

  • callback

    函数 可选

    callback 参数如下所示:

    (harLog: object) => void

    • harLog

      对象

      HAR 日志。如需了解详情,请参阅 HAR 规范。

返回

  • Promise<object>

    Chrome 151 及更高版本

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

    仅 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。

事件

onNavigated

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

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

参数

  • callback

    函数

    callback 参数如下所示:

    (url: string) => void

    • 网址

      字符串

onRequestFinished

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

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

参数

  • callback

    函数

    callback 参数如下所示:

    (request: Request) => void