PerformanceResourceTiming: deliveryType-Eigenschaft
Hinweis: Dieses Feature ist verfügbar in Web Workers.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig, bevor Sie diese produktiv verwenden.
Die deliveryType
-Eigenschaft ist eine schreibgeschützte Zeichenkette, die angibt, wie die Ressource bereitgestellt wurde — zum Beispiel aus dem Cache oder über ein navigational prefetch.
Wert
Eine Zeichenkette, die einer der folgenden Werte sein kann:
"cache"
-
Die Ressource wurde aus dem Cache abgerufen.
-
Die Ressource wurde von einer vorab abgerufenen Antwort aus einem im Speicher befindlichen Cache über die Speculation Rules API abgerufen.
""
(leere Zeichenkette)-
Wird zurückgegeben, wenn keiner der oben genannten Bereitstellungstypen zutrifft.
Beispiele
Filtern von Ressourcen
Die deliveryType
-Eigenschaft kann verwendet werden, um nur bestimmte Ressourcentiming-Einträge zu erhalten; zum Beispiel nur solche, die zwischengespeichert wurden.
Im folgenden Beispiel wird ein PerformanceObserver
verwendet, um über neue resource
-Performance-Einträge zu informieren, sobald sie in der Performance-Zeitleiste des Browsers erfasst werden. Die buffered
-Option wird verwendet, um Einträge aus der Zeit vor der Erstellung des Observers zuzugreifen.
const observer = new PerformanceObserver((list) => {
const cachedResources = list.getEntries().filter((entry) => {
return entry.deliveryType === "cache";
});
console.log(cachedResources);
});
observer.observe({ type: "resource", buffered: true });
Das folgende Beispiel verwendet Performance.getEntriesByType()
, das nur resource
-Performance-Einträge zeigt, die im Zeitpunkt des Aufrufens der Methode in der Performance-Zeitleiste des Browsers vorhanden sind.
const scripts = performance.getEntriesByType("resource").filter((entry) => {
return entry.deliveryType === "cache";
});
console.log(scripts);
Spezifikationen
Specification |
---|
Resource Timing # dom-performanceresourcetiming-deliverytype |
Browser-Kompatibilität
BCD tables only load in the browser