lynx   »   [go: up one dir, main page]

Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

Sec-Speculation-Tags header

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.

Nicht standardisiert: Diese Funktion ist nicht standardisiert. Wir raten davon ab, nicht-standardisierte Funktionen auf produktiven Webseiten zu verwenden, da sie nur von bestimmten Browsern unterstützt werden und sich in Zukunft ändern oder entfernt werden können. Unter Umständen kann sie jedoch eine geeignete Option sein, wenn es keine standardisierte Alternative gibt.

Der HTTP-Sec-Speculation-Tags-Request-Header enthält einen oder mehrere tag-Werte aus den Spekulationsregeln, die zu der Spekulation geführt haben. Dies ermöglicht es einem Server zu identifizieren, welche Regel(n) die Spekulation verursacht haben, und sie gegebenenfalls zu blockieren.

Ein CDN kann beispielsweise automatisch Spekulationsregeln einfügen, jedoch Spekulationen für Ressourcen blockieren, die nicht im CDN zwischengespeichert sind, um unbeabsichtigte Konsequenzen zu vermeiden. Der Sec-Speculation-Tags-Header ermöglicht es dem CDN, zwischen den von ihm eingefügten Regeln (die in diesem Fall blockiert werden sollten) und den Spekulationsregeln des Website-Eigentümers (die nicht blockiert werden sollten) zu unterscheiden.

Header-Typ Request-Header
Verbotener Request-Header Ja (Sec--Präfix)

Syntax

http
Sec-Speculation-Tags: <tag-list>

Direktiven

<tag-list>

Eine kommagetrennte Liste von Tags, die auf Speculation Rules API-Regeln hinweisen, die diese Anfrage möglicherweise initiiert haben. Siehe JSON-Darstellung der Spekulationsregeln für die Syntaxreferenz.

Beispiele

Spekulation aus einer Regel ohne expliziten Tag

html
<script type="speculationrules">
  {
    "prefetch": [
      {
        "urls": ["next.html", "next2.html"]
      }
    ]
  }
</script>

Wenn eine Spekulation aufgrund einer Spekulationsregel ohne Tag erfolgt, dann wird null im Sec-Speculation-Tags-Header gesendet.

http
Sec-Speculation-Tags: null

Spekulation aus einer Regel mit einem Tag

html
<script type="speculationrules">
  {
    "prefetch": [
      {
        "tag": "my-rule",
        "urls": ["next.html", "next2.html"]
      }
    ]
  }
</script>

Wenn eine Spekulation aufgrund einer Spekulationsregel mit einem Tag erfolgt, wird der Tag-Name im Sec-Speculation-Tags-Header gesendet.

http
Sec-Speculation-Tags: "my-rule"

Spekulation aus einer Regel mit mehreren Tags

Der tag kann auf mehreren Ebenen festgelegt werden:

html
<script type="speculationrules">
  {
    "tag": "my-ruleset",
    "prefetch": [
      {
        "tag": "my-rule",
        "urls": ["next.html", "next2.html"]
      }
    ]
  }
</script>

Alle passenden Tags werden im Sec-Speculation-Tags-Header gesendet, in diesem Fall würden also sowohl "my-ruleset" als auch "my-rule" gesendet:

http
Sec-Speculation-Tags: "my-ruleset", "my-rule"

Spekulation aus mehreren Regeln

html
<script type="speculationrules">
  {
    "prefetch": [
      {
        "tag": "my-rule",
        "urls": ["next.html", "next2.html"],
        "eagerness": "moderate"
      }
    ]
  }
</script>
<script type="speculationrules">
  {
    "prefetch": [
      {
        "tag": "cdn-rule",
        "urls": ["next.html", "next.html"],
        "eagerness": "conservative"
      }
    ]
  }
</script>

In diesem Beispiel, wenn die Spekulation dadurch initiiert wird, dass der Benutzer 200 Millisekunden über den Link schwebt ("eagerness": "moderate"), wird nur der my-rule-Tag im Header gesendet:

http
Sec-Speculation-Tags: "my-rule"

Wird der Link jedoch sofort angeklickt, ohne auf das 200-Millisekunden-Hover zu warten, würden beide Regeln eine Spekulation auslösen, daher werden beide Tags im Header enthalten sein:

http
Sec-Speculation-Tags: "my-rule", "cdn-rule"

Spekulation aus mehreren Regeln mit und ohne Tags

html
<script type="speculationrules">
  {
    "prefetch": [
      {
        "urls": ["next.html", "next2.html"],
        "eagerness": "moderate"
      }
    ]
  }
</script>
<script type="speculationrules">
  {
    "prefetch": [
      {
        "tag": "cdn-rule",
        "urls": ["next.html", "next.html"],
        "eagerness": "conservative"
      }
    ]
  }
</script>

Ähnlich wie im vorherigen Beispiel würden, wenn der Link sofort angeklickt wird, beide Regeln eine Spekulation auslösen, daher werden beide Tags im Header enthalten sein. Da die erste Regel jedoch kein tag-Feld enthält, wird sie im Header durch einen null-Wert dargestellt:

http
Sec-Speculation-Tags: null, "cdn-rule"

Spezifikationen

This feature does not appear to be defined in any specification.

Browser-Kompatibilität

Siehe auch

Лучший частный хостинг