PerformanceResourceTiming: deliveryType-Eigenschaft

Hinweis: Diese Funktion ist in Web Workers verfügbar.

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

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

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
deliveryType
Experimental
deliveryType="navigational-prefetch"
Experimental

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support
Experimental. Expect behavior to change in the future.