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.

js
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.

js
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