Sec-Fetch-Dest
Sec-Fetch-Dest
获取元数据请求头 指示请求的 *目标*。即原始获取请求的启动器,以及获取的数据将使用的位置(以及方式)。
这使服务器能够根据其*预期*的使用方式来确定是否提供服务请求。例如,具有audio
目标的请求应请求音频数据,而不是其他类型的资源(例如,包含敏感用户信息的文档)。
头类型 | 获取元数据请求头 |
---|---|
禁止的头名 | 是(前缀Sec- ) |
CORS 安全列表请求头 | 否 |
语法
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()
,EventSource
,XMLHttpRequest
,WebSocket
等。 fencedframe
Experimental-
目标是 围栏框架。
font
-
目标是字体。这可能源自 CSS
@font-face
。 frame
-
目标是框架。这可能源自 HTML
<frame>
标签。 iframe
-
目标是 iframe。这可能源自 HTML
<iframe>
标签。 image
-
目标是图像。这可能源自 HTML
<img>
,SVG<image>
,CSSbackground-image
,CSScursor
,CSSlist-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
。 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
)
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: cross-site
规范
规范 |
---|
获取元数据请求头 # sec-fetch-dest-header |
浏览器兼容性
BCD 表格仅在浏览器中加载
另请参阅
- 相关头
- 使用获取元数据保护您的资源免受网络攻击 (web.dev)
- 获取元数据请求头游乐场 (secmetadata.appspot.com)