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元标记并使用实际的headers服务文件,那么它会记录crossOriginIsolated: true (在Chrome和火狐中)。所以我似乎不能用元标记来设置这些标题?
发布于 2021-05-20 08:17:36
不,他们不能。
根据这个规范,http-equiv只支持几个headers。https://html.spec.whatwg.org/multipage/semantics.html#attr-meta-http-equiv。
这意味着服务器只能将这些标头设置为HTTP (“实际”)标头。
在HTML中支持它们将是一个安全漏洞。
https://stackoverflow.com/questions/67259043
复制相似问题