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编码。