CORS settings attributes - HTML(超文本标记语言) 编辑
在HTML5中,一些 HTML 元素提供了对 CORS 的支持, 例如 <audio>
、<img>
、<link>
、<script>
和 <video>
均有一个跨域属性 (crossOrigin
property),它允许你配置元素获取数据的 CORS 请求。
The crossorigin
content attribute on media elements is a CORS settings attribute.
这些属性是枚举的,并具有以下可能的值:
关键字 | 描述 |
anonymous | 对此元素的 CORS 请求将不设置凭据标志。 |
use-credentials | 对此元素的CORS请求将设置凭证标志;这意味着请求将提供凭据。 |
"" | 设置一个空的值,如 crossorigin 或 crossorigin="" ,和设置 anonymous 的效果一样。 |
默认情况下(即未指定 crossOrigin 属性时),CORS 根本不会使用。如 Terminology section of the CORS specification 中的描述,在非同源情况下,设置 "anonymous" 关键字将不会通过 cookies,客户端 SSL 证书或 HTTP 认证交换用户凭据。
即使是无效的关键字和空字符串也会被当作 anonymous
关键字使用。
示例:使用 crossorigin 的 script 元素
你可以使用下面的 <script>
元素告诉浏览器执行来自 https://example.com/example-framework.js
的脚本且不发送用户凭据。
<script src="https://example.com/example-framework.js" crossorigin="anonymous"></script>
示例:Webmanifest with credentials
在获取需要用户凭据的 manifest 时,属性值必须设置为 use-credentials
。即使是同源的情况。
<link rel="manifest" href="/app.webmanifest" crossorigin="use-credentials">
Specifications
规范
规范 | 状态 | 备注 |
---|---|---|
HTML Living Standard CORS settings attributes | Living Standard | |
HTML Living Standard crossorigin | Living Standard |
浏览器兼容性
We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|
Basic support | 13 | 8.0 (8.0) | 11 | 未实现 | (Yes) |
<video> | ? | 12.0 (12.0) | ? | ? | ? |
Feature | Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|
Basic support | ? | 8.0 (8.0) | ? | ? | (Yes) |
<video> | ? | 12.0 (12.0) | ? | ? | ? |
另请参阅
- HTTP access control(HTTP 访问控制)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论