PerformanceResourceTiming: redirectStart-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: Dieses Feature ist verfügbar in Web Workers.
Die schreibgeschützte redirectStart
-Eigenschaft gibt einen Zeitstempel
zurück, der die Startzeit des Abrufs repräsentiert, der die Umleitung initiiert.
Wenn es HTTP-Umleitungen beim Abrufen der Ressource gibt und wenn eine der Umleitungen nicht vom gleichen Ursprung wie das aktuelle Dokument stammt, aber der Timing-Allow-Check-Algorithmus für jede umgeleitete Ressource besteht, gibt diese Eigenschaft die Startzeit des Abrufs zurück, der die Umleitung initiiert; andernfalls wird null zurückgegeben.
Um die Anzahl der Umleitungen zu ermitteln, siehe auch PerformanceNavigationTiming.redirectCount
.
Wert
Die redirectStart
-Eigenschaft kann folgende Werte haben:
- Ein
Zeitstempel
, der die Startzeit des Abrufs darstellt, der die Umleitung initiiert. 0
, wenn es keine Umleitung gibt.0
, wenn die Ressource eine anfrageübergreifende Abfrage ist und keinTiming-Allow-Origin
HTTP-Antwort-Header verwendet wird.
Beispiele
Messung der Umleitungszeit
Die Eigenschaften redirectStart
und redirectEnd
können verwendet werden, um zu messen, wie lange die Umleitung dauert.
const redirect = entry.redirectEnd - entry.redirectStart;
Beispiel mit einem PerformanceObserver
, der neue resource
Performance-Einträge meldet, sobald sie in der Leistungszeitleiste des Browsers erfasst werden. Verwenden Sie die buffered
-Option, um auf Einträge vor der Erstellung des Observers zuzugreifen.
const observer = new PerformanceObserver((list) => {
list.getEntries().forEach((entry) => {
const redirect = entry.redirectEnd - entry.redirectStart;
if (redirect > 0) {
console.log(`${entry.name}: Redirect time: ${redirect}ms`);
}
});
});
observer.observe({ type: "resource", buffered: true });
Beispiel unter Verwendung von Performance.getEntriesByType()
, das nur resource
Performance-Einträge anzeigt, die zum Zeitpunkt des Aufrufs dieser Methode in der Leistungszeitleiste des Browsers vorhanden sind:
const resources = performance.getEntriesByType("resource");
resources.forEach((entry) => {
const redirect = entry.redirectEnd - entry.redirectStart;
if (redirect > 0) {
console.log(`${entry.name}: Redirect time: ${redirect}ms`);
}
});
Timing-Informationen bei anfrageübergreifenden Anfragen
Wenn der Wert der redirectStart
-Eigenschaft 0
ist, könnte die Ressource eine anfrageübergreifende Anfrage sein. Um anfrageübergreifende Timing-Informationen zu sehen, muss der Timing-Allow-Origin
HTTP-Antwort-Header gesetzt werden.
Zum Beispiel, um https://developer.mozilla.org
den Zugriff auf Timing-Ressourcen zu erlauben, sollte die anfrageübergreifende Ressource senden:
Timing-Allow-Origin: https://developer.mozilla.org
Spezifikationen
Specification |
---|
Resource Timing # dom-performanceresourcetiming-redirectstart |
Browser-Kompatibilität
BCD tables only load in the browser