Вебсправочник
Справочник HTML

Атрибут crossorigin: режим загрузки междоменных ресурсов

Crossorigin задаёт CORS-настройки загрузки для поддерживаемых элементов. Он нужен, когда важно не только показать ресурс, но и получить разрешённый доступ к его данным или согласовать режим запроса.

Назначение

Crossorigin задаёт CORS-настройки загрузки для поддерживаемых элементов. Он нужен, когда важно не только показать ресурс, но и получить разрешённый доступ к его данным или согласовать режим запроса.

Как это работает

Anonymous обычно исключает учётные данные при междоменной загрузке, сохраняя правила same-origin для своего источника. Сервер ресурса должен вернуть подходящие CORS-заголовки. Ниже пример для собственного тестового сервера, а не готовая внешняя ссылка.

Пример

<!-- Разместите diagram.png на своём тестовом сервере. -->
<img src="diagram.png" crossorigin="anonymous" alt="Схема учебного документа" width="640" height="360">

Что должно получиться

При корректной настройке ресурс загружается в выбранном режиме. Разница особенно важна при дальнейшем использовании изображения в canvas: разрешение доступа к пикселям определяется не одним HTML-атрибутом.

Граница применения и частая ошибка

Добавление crossorigin не обходит CORS. Для чужого сервера без нужного разрешения загрузка в CORS-режиме может завершиться отказом. Use-credentials требует отдельного согласования учётных данных и не должно назначаться всем ресурсам по умолчанию.

Самостоятельная проверка

На двух собственных тестовых origin сравните запросы с атрибутом и без него. Изучите Origin и ответ Access-Control-Allow-Origin. Не ослабляйте CORS рабочего сервера глобально ради одного учебного изображения.

Самостоятельный учебный материал. Техническая документация: первоисточник по теме ↗. Если результат отличается, проверьте код и версию браузера.