Cross-Origin-Embedder-Policy - HTTP 编辑
The HTTP Cross-Origin-Embedder-Policy
(COEP) response header prevents a document from loading any cross-origin resources that don't explicitly grant the document permission (using CORP or CORS).
Header type | Response header |
---|---|
Forbidden header name | no |
Syntax
Cross-Origin-Embedder-Policy: unsafe-none | require-corp
Directives
unsafe-none
- This is the default value. Allows the document to fetch cross-origin resources without giving explicit permission through the CORS protocol or the
Cross-Origin-Resource-Policy
header. require-corp
- A document can only load resources from the same origin, or resources explicitly marked as loadable from another origin.
If a cross origin resource supports CORS, thecrossorigin
attribute or theCross-Origin-Resource-Policy
header must be used to load it without being blocked by COEP.
Examples
Certain features depend on cross-origin isolation
You can only access certain features like SharedArrayBuffer
objects or Performance.now()
with unthrottled timers, if your document has a COEP header with the value require-corp
value set.
Cross-Origin-Embedder-Policy: require-corp Cross-Origin-Opener-Policy: same-origin
See also the Cross-Origin-Opener-Policy
header which you'll need to set as well.
To check if cross origin isolation has been successful, you can test against the crossOriginIsolated
property available to window and worker contexts:
if (crossOriginIsolated) {
// Post SharedArrayBuffer
} else {
// Do something else
}
Avoiding COEP blockage with CORS
If you enable COEP using require-corp
and have a cross origin resource that needs to be loaded, it needs to support CORS and you need to explicitly mark the resource as loadable from another origin to avoid blockage from COEP. For example, you can use the crossorigin
attribute for this image from a third-party site:
<img src="https://www.wenjiangs.com/wp-content/uploads/2020/mozilla/img.png" crossorigin>
Specifications
Specification |
---|
HTML Living Standard The definition of 'Cross-Origin-Embedder-Policy header' in that specification. |
Browser compatibility
BCD tables only load in the browser
See also
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论