Skip to content

资源监控

获取资源数据:

js
let resourceData = performance.getEntriesByType('resource');
let resourceData = performance.getEntriesByType('resource');

计算时间:

js
resourceData.forEach(function(resource) {
  // 获取资源的相关信息,例如名称、类型、大小等
  let name = resource.name;
  let type = resource.initiatorType;
  let size = resource.transferSize;

  // 可计算的资源时间
  console.log(`== 资源 [${i}] - ${resource.name}`);
  // 重定向时间
  let t = resource.redirectEnd - resource.redirectStart;
  console.log(`… 重定向时间 = ${t}`);

  // DNS时间
  t = resource.domainLookupEnd - resource.domainLookupStart;
  console.log(`… DNS查询时间 = ${t}`);

  // TCP握手时间
  t = resource.connectEnd - resource.connectStart;
  console.log(`… TCP握手时间 = ${t}`);

  // 响应时间
  t = resource.responseEnd - resource.responseStart;
  console.log(`… 响应时间 = ${t}`);

  // 获取直到响应结束
  t =
    resource.fetchStart > 0 ? resource.responseEnd - resource.fetchStart : "0";
  console.log(`… 获取直到响应结束时间 = ${t}`);

  // 请求开始直到响应结束
  t =
    resource.requestStart > 0
      ? resource.responseEnd - resource.requestStart
      : "0";
  console.log(`… 请求开始直到响应结束时间 = ${t}`);

  // 开始直到响应结束
  t =
    resource.startTime > 0 ? resource.responseEnd - resource.startTime : "0";
  console.log(`… 开始直到响应结束时间 = ${t}`);
});
resourceData.forEach(function(resource) {
  // 获取资源的相关信息,例如名称、类型、大小等
  let name = resource.name;
  let type = resource.initiatorType;
  let size = resource.transferSize;

  // 可计算的资源时间
  console.log(`== 资源 [${i}] - ${resource.name}`);
  // 重定向时间
  let t = resource.redirectEnd - resource.redirectStart;
  console.log(`… 重定向时间 = ${t}`);

  // DNS时间
  t = resource.domainLookupEnd - resource.domainLookupStart;
  console.log(`… DNS查询时间 = ${t}`);

  // TCP握手时间
  t = resource.connectEnd - resource.connectStart;
  console.log(`… TCP握手时间 = ${t}`);

  // 响应时间
  t = resource.responseEnd - resource.responseStart;
  console.log(`… 响应时间 = ${t}`);

  // 获取直到响应结束
  t =
    resource.fetchStart > 0 ? resource.responseEnd - resource.fetchStart : "0";
  console.log(`… 获取直到响应结束时间 = ${t}`);

  // 请求开始直到响应结束
  t =
    resource.requestStart > 0
      ? resource.responseEnd - resource.requestStart
      : "0";
  console.log(`… 请求开始直到响应结束时间 = ${t}`);

  // 开始直到响应结束
  t =
    resource.startTime > 0 ? resource.responseEnd - resource.startTime : "0";
  console.log(`… 开始直到响应结束时间 = ${t}`);
});