Sec-Fetch-Dest

基线 2023

新功能

2023 年 3 月起,此功能在最新设备和浏览器版本中可用。此功能可能在旧设备或浏览器中无法使用。

Sec-Fetch-Dest 获取元数据请求头 指示请求的 *目标*。即原始获取请求的启动器,以及获取的数据将使用的位置(以及方式)。

这使服务器能够根据其*预期*的使用方式来确定是否提供服务请求。例如,具有audio 目标的请求应请求音频数据,而不是其他类型的资源(例如,包含敏感用户信息的文档)。

头类型 获取元数据请求头
禁止的头名 是(前缀Sec-
CORS 安全列表请求头

语法

http
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: 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: track
Sec-Fetch-Dest: video
Sec-Fetch-Dest: webidentity
Sec-Fetch-Dest: worker
Sec-Fetch-Dest: xslt

如果此头包含任何其他值,服务器应忽略它。

指令

注意: 这些指令对应于 Request.destination 返回的值。

audio

目标是音频数据。这可能源自 HTML <audio> 标签。

audioworklet

目标是用于音频 worklet 的数据。这可能源自对 audioWorklet.addModule() 的调用。

document

目标是文档(HTML 或 XML),并且该请求是用户发起的顶级导航的结果(例如,由用户点击链接引起)。

embed

目标是嵌入内容。这可能源自 HTML <embed> 标签。

empty

目标是空字符串。这用于没有自身值的目的地。例如:fetch()navigator.sendBeacon()EventSourceXMLHttpRequestWebSocket 等。

fencedframe Experimental

目标是 围栏框架

font

目标是字体。这可能源自 CSS @font-face

frame

目标是框架。这可能源自 HTML <frame> 标签。

iframe

目标是 iframe。这可能源自 HTML <iframe> 标签。

image

目标是图像。这可能源自 HTML <img>,SVG <image>,CSS background-image,CSS cursor,CSS list-style-image 等。

manifest

目标是清单。这可能源自 HTML <link rel=manifest>

object

目标是对象。这可能源自 HTML <object> 标签。

paintworklet

目标是绘制 worklet。这可能源自对 CSS.PaintWorklet.addModule() 的调用。

report

目标是报告(例如,内容安全策略报告)。

script

目标是脚本。这可能源自 HTML <script> 标签或对 WorkerGlobalScope.importScripts() 的调用。

serviceworker

目标是服务工作者。这可能源自对 navigator.serviceWorker.register() 的调用。

sharedworker

目标是共享工作者。这可能源自 SharedWorker

style

目标是样式。这可能源自 HTML <link rel=stylesheet> 或 CSS @import

track

目标是 HTML 文本轨道。这可能源自 HTML <track> 标签。

video

目标是视频数据。这可能源自 HTML <video> 标签。

webidentity

目标是与验证用户身份相关的端点。例如,它在 FedCM API 中用于验证身份提供者 (IdP) 端点的真实性,防止 CSRF 攻击。

worker

目标是 Worker

xslt

目标是 XSLT 变换。

示例

<img> 元素生成的跨站点请求会导致具有以下 HTTP 请求头的请求(请注意,目标是image

http
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: cross-site

规范

规范
获取元数据请求头
# sec-fetch-dest-header

浏览器兼容性

BCD 表格仅在浏览器中加载

另请参阅