crossorigin
属性用于控制从外部源加载资源时的跨域请求行为,主要与 CORS(跨域资源共享)策略相关。它有两个主要值:
anonymous
:请求不包含凭据(如 cookies 和 HTTP 认证信息)。use-credentials
:请求包含凭据。
使用 crossorigin
可以确保加载的资源符合服务器的 CORS 配置。
如果没有指定 crossorigin 属性,比如:比如:
<script crossorigin src="" name="abc" ></script>
浏览器的行为通常与 anonymous 类似,但具体行为可能依赖于浏览器的默认设置。
浏览器有一个同源策略机制是保护跨源读取的,不允许JavaScript读取其内部信息[1]。但是一些元素允许跨源嵌入,比如img、script等元素。声明crossorigin属性可为元素启用CORS,并定义凭据模式。当然,相应的请求和响应也需要使用正确的CORS首部。可使用crossorigin属性的元素包括<img>、<link>、<audio>、<video>、<script>等。
参考链接:
crossorigin引发的问题追踪
跨源相关机制综述(三):crossorigin属性
MDN: CORS settings attributes