PerformanceResourceTiming: responseStatus-Eigenschaft
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die schreibgeschützte Eigenschaft responseStatus
repräsentiert den HTTP-Antwortstatuscode, der beim Abrufen der Ressource zurückgegeben wird.
Diese Eigenschaft entspricht Response.status
aus der Fetch API.
Wert
Die responseStatus
-Eigenschaft kann die folgenden Werte haben:
- Eine Zahl, die den HTTP-Antwortstatuscode angibt, der beim Abrufen der Ressource zurückgegeben wird.
0
, wenn die CORS-Überprüfung fehlschlägt.0
für cross-origin<iframe>
-Objekte.
Beispiele
Überprüfung, ob ein Cache-Treffer vorliegt
Die responseStatus
-Eigenschaft kann verwendet werden, um zwischengespeicherte Ressourcen mit einem 304
Not Modified
-Antwortstatuscode zu überprüfen.
Beispiel mit einem PerformanceObserver
, der über neue resource
-Performanceeinträge informiert, wie sie in der Performance-Timeline des Browsers erfasst werden. Verwenden Sie die Option buffered
, um auf Einträge von vor der Erstellung des Observers zuzugreifen.
const observer = new PerformanceObserver((list) => {
list.getEntries().forEach((entry) => {
if (entry.responseStatus === 304) {
console.log(`${entry.name} was loaded from cache`);
}
});
});
observer.observe({ type: "resource", buffered: true });
Beispiel mit Performance.getEntriesByType()
, das nur resource
-Performanceeinträge anzeigt, die zum Zeitpunkt des Aufrufs dieser Methode in der Performance-Timeline des Browsers vorhanden sind:
const resources = performance.getEntriesByType("resource");
resources.forEach((entry) => {
if (entry.responseStatus === 304) {
console.log(`${entry.name} was loaded from cache`);
}
});
Alternativ, wenn responseStatus
nicht verfügbar ist, können Sie überprüfen, ob die transferSize
-Eigenschaft 0
zurückgegeben hat.
Cross-origin Antwortstatuscodes
Wenn der Wert der responseStatus
-Eigenschaft 0
ist, könnte die Ressource eine cross-origin Anfrage sein. Um das Anzeigen von Cross-Origin-Antwortstatuscodes zu ermöglichen, muss der CORS Access-Control-Allow-Origin
HTTP-Antwortheader gesetzt werden.
Um https://developer.mozilla.org
die Anzeige von Antwortstatuscodes zu ermöglichen, sollte die cross-origin Ressource zum Beispiel senden:
Access-Control-Allow-Origin: https://developer.mozilla.org
Spezifikationen
Specification |
---|
Resource Timing # dom-performanceresourcetiming-responsestatus |
Browser-Kompatibilität
BCD tables only load in the browser