Permissions-Policy: deferred-fetch-Direktive
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Die deferred-fetch
Permissions-Policy
-Direktive ist Teil der fetchLater()
API.
Diese Direktive, zusammen mit deferred-fetch-minimal
, bestimmt, wie das gesamte Quotenlimit von 640KiB zwischen dem Ursprung der obersten Ebene und seinen Cross-Origin-Subframes aufgeteilt wird. Standardmäßig wird dem Ursprung der obersten Ebene 512KiB zugewiesen, und jedem Cross-Origin-Subframe werden 8KiB aus den verbleibenden 128KiB zugewiesen. Die deferred-fetch
-Berechtigungsrichtlinie kann es Sub-Frame-Ursprüngen ermöglichen, ein größeres Kontingent von 64KiB aus dem 512KiB-Kontingent des Ursprung der obersten Ebene zu erhalten, anstelle der 8KiB Mindestquote, die sie sonst standardmäßig erhalten würden.
Siehe fetchLater()
-Quoten für weitere Details und Beispiele.
Syntax
Permissions-policy: deferred-fetch=(self)
Permissions-policy: deferred-fetch=(self <url-list>)
Permissions-policy: deferred-fetch=(<url-list>)
<url-list>
-
Eine durch Leerzeichen getrennte Liste von Ursprüngen (jeder in Anführungszeichen), denen ein höheres Kontingent von 64KiB gewährt wird, das aus dem Hauptkontingent des Elternteils entnommen wird. Das 64KiB-Kontingent wird zu dem Zeitpunkt entnommen, an dem das Subframe erstellt wird.
Ein Cross-Origin-Subframe kann deferred-fetch
an einen seiner Cross-Origin-Subframe-Nachkommen gewähren und ihm sein gesamtes Kontingent übertragen. Dies funktioniert nur, wenn derzeit keines der Kontingente genutzt wird.
Berechtigungsmechanismen-Überprüfungen unterscheiden sich nicht von Kontingentüberprüfungen. Der Aufruf von fetchLater()
löst einen QuotaExceededError
aus, sowohl wenn das Kontingent tatsächlich überschritten wird, als auch wenn das Kontingent für diesen Ursprung durch eine Berechtigungsrichtlinie eingeschränkt wurde.
Standardrichtlinie
Die Standard-Whitelist für deferred-fetch
ist self
.
Beispiele
Siehe fetchLater()
-Quoten für weitere Beispiele.
Nutzung des minimalen Kontingents
Permissions-Policy: deferred-fetch=(self "https://b.com")
- Ein Subframe von
b.com
erhält bei der Erstellung 64KiB, aus dem 512KiB-Limit der obersten Ebene. - Ein Subframe von
c.com
ist nicht aufgeführt und erhält daher bei der Erstellung 8KiB aus dem 128KiB-Freigabelimit. - 15 weitere Subframes von verschiedenen Ursprüngen würden bei der Erstellung 8KiB erhalten (ähnlich wie
c.com
). - Das nächste Subframe würde kein Kontingent erhalten.
- Wenn eines der Subframes entfernt wird, werden seine geplanten Abrufe gesendet.
- Das nächste Subframe würde ein Kontingent von 8KiB erhalten, da wieder Kontingent verfügbar ist.
Das minimale Kontingent vollständig widerrufen
Permissions-Policy: deferred-fetch=(self "https://b.com")
Permissions-Policy: deferred-fetch-minimal=()
- Ein Subframe von
b.com
erhält bei der Erstellung 64KiB. - Ein Subframe von
c.com
erhält bei der Erstellung kein Kontingent. - Das Dokument der obersten Ebene und seine differenzierten Ursprungsnachkommen können bis zu 640KiB nutzen, aber das wird auf 574KiB reduziert, wenn ein
b.com
-Subframe erstellt wird.
Spezifikationen
Specification |
---|
Fetch> # available-deferred-fetch-quota> |
Browser-Kompatibilität
Loading…