3

Cross-Origin-Embedder-Policy和标头可以Cross-Origin-Opener-Policy<meta>标签设置,还是只能用实际的标头设置?如果没有,是否有可以使用元标记设置的标题列表?

以下示例记录crossOriginIsolated: false到控制台。

<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="Cross-Origin-Embedder-Policy" content="require-corp">
  <meta http-equiv="Cross-Origin-Opener-Policy" content="same-origin">
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>COOP/COEP header test</title>
</head>
<body>
  <script>console.log("crossOriginIsolated:", self.crossOriginIsolated)</script>
</body>
</html>

如果我删除这些http-equiv元标记并使用实际的 HTTP 标头提供文件,那么它会记录crossOriginIsolated: true(在 Chrome 和 Firefox 中)。所以看起来我不能用元标签设置这些标题?

4

1 回答 1

3

不,他们不能。

根据此规范,http-equiv仅支持少数 HTTP 标头。 https://html.spec.whatwg.org/multipage/semantics.html#attr-meta-http-equiv

这意味着服务器只能将这些标头设置为 HTTP(“实际”)标头。
在 HTML 中支持它们将是一个安全漏洞。

于 2021-05-20T08:17:36.927 回答