crossorigin HTML-атрибут
Атрибут crossorigin, допустимый для элементов <audio>, <img>, <link>, <script> и <video>, обеспечивает поддержку CORS и определяет, как элемент обрабатывает запросы с другого источника, тем самым позволяя настраивать CORS-запросы для загружаемых данных элемента. В зависимости от элемента этот атрибут может быть атрибутом настройки CORS.
Атрибут содержимого crossorigin для мультимедийных элементов является атрибутом настройки CORS.
Эти атрибуты являются перечисляемыми и могут принимать следующие значения:
anonymous-
Запрос использует заголовки CORS, а флаг учётных данных установлен в значение
'same-origin'. Учётные данные пользователя не передаются через файлы cookie, клиентские TLS-сертификаты или HTTP-аутентификацию, если только источник назначения не совпадает с источником документа. use-credentials-
Запрос использует заголовки CORS, флаг учётных данных установлен в значение
'include', а учётные данные пользователя всегда включаются. ""-
Установка атрибута без значения, например
crossoriginилиcrossorigin="", равносильна установке значенияanonymous.
Недопустимое ключевое слово и пустая строка обрабатываются как ключевое слово anonymous.
По умолчанию (то есть если атрибут не указан) CORS вообще не используется. Пользовательский агент не будет запрашивать разрешение на полный доступ к ресурсу; при запросе с другого источника будут применяться определённые ограничения в зависимости от типа соответствующего элемента:
| Элемент | Ограничения |
|---|---|
img, audio, video
| Если ресурс помещён в <canvas>, элемент помечается как загрязнённый. |
script | Доступ к журналу ошибок через window.onerror будет ограничен. |
link | Запрос без соответствующего заголовка crossorigin может быть отклонён. |
Примечание: Атрибут crossorigin не поддерживается для rel="icon" в браузерах на основе Chromium. См. открытую проблему Chromium.
Примеры
>
crossorigin с элементом <script>
С помощью следующего элемента <script> можно указать браузеру выполнить скрипт https://example.com/example-framework.js без отправки учётных данных пользователя.
<script src="https://example.com/example-framework.js" crossorigin="anonymous"></script>
Веб-манифест с учётными данными
При загрузке манифеста, для которого требуются учётные данные, необходимо использовать значение use-credentials, даже если файл находится на том же источнике.
<link rel="manifest" href="/app.webmanifest" crossorigin="use-credentials" />
Спецификации
| Спецификация |
|---|
| HTML> # cors-settings-attributes> |
Совместимость с браузерами
>html.elements.audio.crossorigin
| Настольные ПК | Мобильные устройства | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari в iOS | Samsung Internet | WebView Android | WebView в iOS | |
crossorigin |
33 | ≤18 |
7412–74При использованииcrossorigin="use-credentials" файлы cookie не отправляются во время перемотки. См. ошибку 1532722. |
20 | 10 | 33 |
7914–79При использованииcrossorigin="use-credentials" файлы cookie не отправляются во время перемотки. См. ошибку 1532722. |
20 | 10 | 2.0 | 4.4.3 | 10 |
html.elements.img.crossorigin
| Настольные ПК | Мобильные устройства | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari в iOS | Samsung Internet | WebView Android | WebView в iOS | |
crossorigin |
13 | 12 | 8 | 15 | 6 | 18 | 8 | 14 | 6 | 1.0 | 4.4 | 6 |
html.elements.link.crossorigin
| Настольные ПК | Мобильные устройства | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari в iOS | Samsung Internet | WebView Android | WebView в iOS | |
crossorigin |
34 | 17 | 18До Firefox 83 поддержкаcrossorigin для rel="icon" отсутствовала. |
21 | 10 | 34 | 18До Firefox для Android 83 поддержкаcrossorigin для rel="icon" отсутствовала. |
21 | 10 | 2.0 | 37 | 10 |
html.elements.script.crossorigin
| Настольные ПК | Мобильные устройства | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari в iOS | Samsung Internet | WebView Android | WebView в iOS | |
crossorigin |
19 | 14 | 14 | 12 | 25 | 14 | 12 | 1.5 | 4.4 | |||
html.elements.video.crossorigin
| Настольные ПК | Мобильные устройства | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari в iOS | Samsung Internet | WebView Android | WebView в iOS | |
crossorigin |
33 | ≤18 |
7412–74При использованииcrossorigin="use-credentials" файлы cookie не отправляются во время перемотки. См. ошибку 1532722. |
20 | 10 | 33 |
7914–79При использованииcrossorigin="use-credentials" файлы cookie не отправляются во время перемотки. См. ошибку 1532722. |
20 | 10 | 2.0 | 4.4.3 | 10 |
См. также
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Attributes/crossorigin