Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

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

Siehe auch