Sec-Fetch-Dest header
Baseline
Weitgehend verfügbar
*
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit März 2023 browserübergreifend verfügbar.
Want more browser support for this feature? Tell us why.
* Einige Teile dieser Funktion werden möglicherweise unterschiedlich gut unterstützt.
Der HTTP-Sec-Fetch-Dest-Fetch-Metadata-Request-Header gibt das Ziel der Anfrage an.
Dies ist der Initiator der ursprünglichen Fetch-Anfrage, also wo (und wie) die abgerufenen Daten verwendet werden.
Dadurch können Server entscheiden, ob sie eine Anfrage bearbeiten, abhängig davon, ob sie für die erwartete Verwendung angemessen ist. Beispielsweise sollte eine Anfrage mit dem Ziel audio Audiodaten und keinen anderen Ressourcentyp anfordern (beispielsweise ein Dokument, das sensible Benutzerinformationen enthält).
| Header-Typ | Fetch-Metadata-Request-Header |
|---|---|
| Verbotener Request-Header | Ja (Sec--Präfix) |
| CORS-safelisted Request-Header | Nein |
Syntax
Sec-Fetch-Dest: audio
Sec-Fetch-Dest: audioworklet
Sec-Fetch-Dest: document
Sec-Fetch-Dest: embed
Sec-Fetch-Dest: empty
Sec-Fetch-Dest: fencedframe
Sec-Fetch-Dest: font
Sec-Fetch-Dest: frame
Sec-Fetch-Dest: iframe
Sec-Fetch-Dest: image
Sec-Fetch-Dest: json
Sec-Fetch-Dest: manifest
Sec-Fetch-Dest: object
Sec-Fetch-Dest: paintworklet
Sec-Fetch-Dest: report
Sec-Fetch-Dest: script
Sec-Fetch-Dest: serviceworker
Sec-Fetch-Dest: sharedworker
Sec-Fetch-Dest: style
Sec-Fetch-Dest: text
Sec-Fetch-Dest: track
Sec-Fetch-Dest: video
Sec-Fetch-Dest: webidentity
Sec-Fetch-Dest: worker
Sec-Fetch-Dest: xslt
Server sollten diesen Header ignorieren, wenn er einen anderen Wert enthält.
Direktiven
Hinweis:
Diese Direktiven entsprechen den von Request.destination zurückgegebenen Werten.
audio-
Das Ziel sind Audiodaten. Dies kann von einem HTML-Tag
<audio>stammen. audioworklet-
Das Ziel sind Daten, die zur Verwendung durch einen Audio-Worklet abgerufen werden. Dies kann von einem Aufruf von
audioWorklet.addModule()stammen. document-
Das Ziel ist ein Dokument (HTML oder XML), und die Anfrage ist das Ergebnis einer vom Benutzer initiierten Navigation der obersten Ebene (z. B. wenn ein Benutzer auf einen Link klickt).
embed-
Das Ziel ist eingebetteter Inhalt. Dies kann von einem HTML-Tag
<embed>stammen. empty-
Das Ziel ist die leere Zeichenkette. Diese wird für Ziele verwendet, die keinen eigenen Wert haben. Zum Beispiel:
fetch(),navigator.sendBeacon(),EventSource,XMLHttpRequest,WebSocketusw. fencedframe-
Das Ziel ist ein fenced frame.
font-
Das Ziel ist eine Schriftart. Dies kann von CSS
@font-facestammen. frame-
Das Ziel ist ein Frame. Dies kann von einem HTML-Tag
<frame>stammen. iframe-
Das Ziel ist ein iframe. Dies kann von einem HTML-Tag
<iframe>stammen. image-
Das Ziel ist ein Bild. Dies kann von einem HTML-Tag
<img>, SVG<image>, CSSbackground-image, CSScursor, CSSlist-style-imageusw. stammen. json-
Das Ziel ist JSON. Dies kann von einem JavaScript-
import with { type: "json" }stammen. manifest-
Das Ziel ist ein Manifest. Dies kann von einem HTML-<link rel=manifest> stammen.
object-
Das Ziel ist ein Objekt. Dies kann von einem HTML-Tag
<object>stammen. paintworklet-
Das Ziel ist ein Paint-Worklet. Dies kann von einem Aufruf von
CSS.PaintWorklet.addModule()stammen. report-
Das Ziel ist ein Bericht (beispielsweise ein Content-Security-Policy-Bericht).
script-
Das Ziel ist ein Skript. Dies kann von einem HTML-Tag
<script>oder einem Aufruf vonWorkerGlobalScope.importScripts()stammen. serviceworker-
Das Ziel ist ein Service Worker. Dies kann von einem Aufruf von
navigator.serviceWorker.register()stammen. -
Das Ziel ist ein Shared Worker. Dies kann von einem
SharedWorkerstammen. style-
Das Ziel ist ein Stylesheet. Dies kann von einem HTML-<link rel=stylesheet>, einem CSS-
@importoder einem JavaScript-import with { type: "css" }stammen. text-
Das Ziel ist Klartext. Dies kann von einem JavaScript-
import with { type: "text" }stammen. track-
Das Ziel ist eine HTML-Textspur. Dies kann von einem HTML-Tag
<track>stammen. video-
Das Ziel sind Videodaten. Dies kann von einem HTML-Tag
<video>stammen. webidentity-
Das Ziel ist ein Endpunkt, der mit der Überprüfung der Benutzeridentität verknüpft ist. Beispielsweise wird es in der FedCM API verwendet, um die Authentizität von Endpunkten von Identitätsanbietern (IdP) zu überprüfen und vor CSRF-Angriffen zu schützen.
worker-
Das Ziel ist ein
Worker. xslt-
Das Ziel ist eine XSLT-Transformation.
Beispiele
>Verwendung von Sec-Fetch-Dest
Eine durch ein <img>-Element erzeugte websiteübergreifende Anfrage würde zu einer Anfrage mit den folgenden HTTP-Request-Headern führen (beachten Sie, dass das Ziel image ist):
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: cross-site
Spezifikationen
| Spezifikation |
|---|
| Fetch Metadata Request Headers> # sec-fetch-dest-header> |
Browser-Kompatibilität
Siehe auch
Sec-Fetch-Mode,Sec-Fetch-Site,Sec-Fetch-UserFetch-Metadata-Request-Header- Schützen Sie Ihre Ressourcen mit Fetch Metadata vor Webangriffen (web.dev)
- Fetch-Metadata-Request-Headers-Spielplatz (secmetadata.appspot.com)