chrome.devtools.network

chrome.devtools.network 模块用以检索网络面板里开发人员工具显示的网络请求的有关信息。

访问 DevTools 接口介绍 了解开发人员工具 API 的使用简介。

概览

网络请求信息表示为 HTTP 归档格式(HAR)。 有关 HAR 的描述不在本文阐述范围之内,其详情请参考 HAR v1.2 Specification

对于 HAR ,若 chrome.devtools.network.onRequestFinished 事件把 HAR entry 作为事件的回调函数参数时, chrome.devtools.network.getHAR() 将会返回 HAR log

值得注意的是考虑到效率的原因请求内容不在 HAR 之中。您需要调用请求的 getContent() 方法检索内容。

若开发人员工具是在页面加载后打开,一些请求可能会在 getHAR() 返回的实体数组中丢失。此时,重新加载页面可以获得所有的请求。大体上讲,通过 getHAR() 返回的请求列表应该和网络面板显示的吻合。

示例

下列代码实现了记录所有加载过的大于40kb的图片的URL:

chrome.devtools.network.onRequestFinished.addListener(
    function(request) {
      if (request.response.bodySize > 40*1024)
      chrome.experimental.devtools.console.addMessage(
          chrome.experimental.devtools.console.Severity.Warning,
          "Large image: " + request.request.url);
});

您可以在 Samples 中找到更多使用开发者工具 API 的示例。

API说明:chrome.devtools.network

方法

getHAR

chrome.devtools.network.getHAR(function callback)

返回包含所有已知网络访问的 HAR log。

参数

callback
( function )
当请求结束检索 HAR log 的函数。

Callback function

指定回调函数,应如下例所示:

function(object harLog) {...};
harLog
( object )
HAR log。请查看 HAR 规范具体细节。

事件

onNavigated

chrome.devtools.network.onNavigated.addListener(function(string url) {...});

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

Listener parameters

url
( string )
新页面的URL.

onRequestFinished

chrome.devtools.network.onRequestFinished.addListener(function(Request request) {...});

当网络请求结束并且所有请求数据可用时触发。

Listener parameters

request
( Request )
HAR实体中一个网络请求的描述。请查看HAR规范具体细节。

类型

Request

( object )
表示网络资源(脚本,图片等)的网络请求。请查看HAR规范具体细节。

Methods of Request

getContent

request.getContent(function callback)

返回请求主题的内容。

参数

callback
( function )
请求完成时检索请求主体的函数。

Callback function

指定回调函数,应如下例所示:

function(string content, string encoding) {...};
content
( string )
响应主体内容(可能编码)。
encoding
( string )
如果内容未被编码时为空,否则应为编码名称。目前只支持base64编码。