PerformanceResourceTiming: responseStart-Eigenschaft

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2017.

Hinweis: Diese Funktion ist in Web Workers verfügbar.

Die responseStart-Eigenschaft, die schreibgeschützt ist, gibt einen Zeitstempel unmittelbar nachdem der Browser das erste Byte der Antwort vom Server, Cache oder einer lokalen Ressource erhalten hat, zurück.

Wert

Die responseStart-Eigenschaft kann folgende Werte haben:

  • Ein DOMHighResTimeStamp unmittelbar nachdem der Browser das erste Byte der Antwort vom Server erhalten hat.
  • 0, wenn die Ressource sofort aus einem Cache abgerufen wurde.
  • 0, wenn die Ressource eine Cross-Origin-Anfrage ist und kein Timing-Allow-Origin HTTP-Antwortheader verwendet wird.

Beispiele

Messung der Anforderungszeit

Die responseStart- und requestStart-Eigenschaften können verwendet werden, um zu messen, wie lange die Anforderung dauert.

js
const request = entry.responseStart - entry.requestStart;

Beispiel mit einem PerformanceObserver, der über neue resource-Leistungseinträge benachrichtigt, die in der Leistungszeitleiste des Browsers aufgezeichnet werden. Verwenden Sie die buffered-Option, um auf Einträge von vor der Erstellung des Observers zuzugreifen.

js
const observer = new PerformanceObserver((list) => {
  list.getEntries().forEach((entry) => {
    const request = entry.responseStart - entry.requestStart;
    if (request > 0) {
      console.log(`${entry.name}: Request time: ${request}ms`);
    }
  });
});

observer.observe({ type: "resource", buffered: true });

Beispiel mit Performance.getEntriesByType(), das nur resource-Leistungseinträge anzeigt, die zum Zeitpunkt des Aufrufs dieser Methode in der Leistungszeitleiste des Browsers vorhanden sind:

js
const resources = performance.getEntriesByType("resource");
resources.forEach((entry) => {
  const request = entry.responseStart - entry.requestStart;
  if (request > 0) {
    console.log(`${entry.name}: Request time: ${request}ms`);
  }
});

Informationen zur Cross-Origin-Zeitmessung

Wenn der Wert der responseStart-Eigenschaft 0 ist, könnte es sich bei der Ressource um eine Cross-Origin-Anfrage handeln. Um die Cross-Origin-Zeitinformationen anzuzeigen, muss der Timing-Allow-Origin HTTP-Antwortheader gesetzt werden.

Zum Beispiel, um https://developer.mozilla.org die Einsicht in die Zeitressourcen zu ermöglichen, sollte die Cross-Origin-Ressource senden:

http
Timing-Allow-Origin: https://developer.mozilla.org

Spezifikationen

Specification
Resource Timing
# dom-performanceresourcetiming-responsestart

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
responseStart

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
Has more compatibility info.

Siehe auch