HTTP Permissions-Policy deferred-fetch-minimal

Typ

Die deferred-fetch-minimal-Direktive steuert minimalen Background-Fetch mit reduzierten Ressourcen und Zeitlimits.

Syntax

Die Direktive definiert eine Allowlist für Ursprünge, die minimalen verzögerten Fetch verwenden dürfen.

http
Permissions-Policy: deferred-fetch-minimal=(self)
Permissions-Policy: deferred-fetch-minimal=(self "https://beacon.com")
Permissions-Policy: deferred-fetch-minimal=()

Direktiven

Die Direktive unterstützt Standard-Allowlist-Werte für präzise Zugriffssteuerung.

self
Erlaubt minimalen Deferred-Fetch nur für das Hauptdokument des gleichen Ursprungs. Eingebettete iFrames von anderen Ursprüngen werden blockiert.
origin-list
Liste von Ursprüngen in Anführungszeichen, z.B. "https://beacon.analytics.com", die zusätzlich zum Hauptdokument minimalen Fetch verwenden dürfen. Für essenzielle Telemetrie.

Beispiele

Die folgenden Beispiele zeigen typische Anwendungsfälle für minimale Analytics-Beacons und Error-Reporting.

Analytics-Beacon mit minimalem Fetch

Eine Website sendet essenzielles Analytics-Beacon mit minimalen Ressourcen-Anforderungen.

http
HTTP/1.1 200 OK
Content-Type: text/html
Permissions-Policy: deferred-fetch-minimal=(self)

<!DOCTYPE html>
<html>
<head><title>Landing Page</title></head>
<body>
  <script>
    navigator.deferredFetchMinimal({
      url: '/api/pageview',
      method: 'POST',
      body: JSON.stringify({page: '/landing', timestamp: Date.now()})
    });
  </script>
</body>
</html>

Error-Reporting-Service-Integration

Eine Plattform erlaubt einem Error-Reporting-Dienst minimalen Background-Fetch für kritische Fehlermeldungen.

http
HTTP/1.1 200 OK
Content-Type: text/html
Permissions-Policy: deferred-fetch-minimal=(self "https://errors.sentry.io")

<!DOCTYPE html>
<html>
<head><title>Web App</title></head>
<body>
  <iframe src="https://errors.sentry.io/beacon"
          allow="deferred-fetch-minimal"></iframe>
</body>
</html>

API ohne Background-Activity

Ein REST-API-Endpunkt deaktiviert alle Background-Fetch-Varianten.

http
HTTP/1.1 200 OK
Content-Type: application/json
Permissions-Policy: deferred-fetch-minimal=(), deferred-fetch=()

{
  "status": "success",
  "data": []
}

Vorteile für die Systemarchitektur

  • Ermöglicht essenzielles Telemetrie-Reporting mit minimaler Ressourcennutzung
  • Reduziert Battery-Drain durch zeitlich limitierte Background-Activity
  • Unterstützt kritisches Error-Reporting ohne vollständigen Deferred Fetch
  • Verhindert ressourcenintensive Background-Operationen von Drittanbietern

Spezifikation

Experimentelle Variante der Deferred Fetch API. Definiert strengere Ressourcen- und Zeitlimits als reguläres deferred-fetch. Chromium-basierte Browser.

Weitere Spezifikationen

Permissions-Policy Header, Content-Security-Policy Header