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 annehmen:
- Eine Zahl, die den HTTP-Antwortstatuscode angibt, der beim Abrufen der Ressource zurückgegeben wird.
0
, wenn die CORS-Prüfung fehlschlägt.0
für plattformübergreifende<iframe>
-Objekte.
Beispiele
Überprüfung, ob ein Cache getroffen wurde
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
-Performance-Einträge informiert, während sie in der Leistungstimeline des Browsers erfasst werden. Verwenden Sie die buffered
-Option, um auf Einträge zuzugreifen, die vor der Erstellung des Observers vorhanden waren.
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
-Performance-Einträge zeigt, die in der Leistungstimeline des Browsers zum Zeitpunkt des Aufrufs dieser Methode 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 prüfen, ob die transferSize
-Eigenschaft 0
zurückgegeben hat.
Plattformübergreifende Antwortstatuscodes
Wenn der Wert der responseStatus
-Eigenschaft 0
ist, könnte die Ressource eine plattformübergreifende Anfrage sein. Um plattformübergreifende Antwortstatuscodes anzuzeigen, muss der CORS Access-Control-Allow-Origin
HTTP-Antwortheader gesetzt werden.
Um beispielsweise https://developer.mozilla.org
zu erlauben, Antwortstatuscodes zu sehen, sollte die plattformübergreifende Ressource 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