После успешного тестирования в исходном коде мы внедряем заголовки доступа к хранилищу (SAH) в Chrome версии 133.
Что такое заголовки доступа к хранилищу?
Заголовки доступа к хранилищу (Storage Access Headers) — это новые HTTP-заголовки, позволяющие встроенному контенту (например, виджетам социальных сетей, календарям, интерактивным инструментам и изображениям) проверять доступ к неразделённым файлам cookie. Ранее это было возможно только с помощью JavaScript . Новые заголовки запроса Sec-Fetch-Storage-Access и ответа Activate-Storage-Access улучшают производительность и удобство использования для веб-сайтов, использующих встроенный контент, и поддерживают загрузку ресурсов, не являющихся iframe. Подробности реализации см. в документации .
заголовок запроса
Sec-Fetch-Storage-Access: <access-status>
Когда пользователь посещает страницу, содержащую встроенный контент, браузер автоматически включает заголовок Sec-Fetch-Storage-Access в межсайтовые запросы, которые могут требовать учетных данных (например, файлов cookie). Этот заголовок указывает на статус разрешения доступа к файлам cookie для встроенного контента и может принимать следующие значения:
none: Встроенный элемент не имеет разрешенияstorage-accessи, следовательно, не имеет доступа к неразделённым файлам cookie.inactive: Встроенный элемент имеет разрешениеstorage-access, но не дал согласия на его использование в текущем контексте. Встроенный элемент не имеет доступа к неразделенным файлам cookie.active: Встроенный элемент имеет доступ к неразделенным файлам cookie. Это значение будет включено во все междоменные запросы, имеющие доступ к неразделенным файлам cookie.
Заголовки ответа
Activate-Storage-Access: <retry-or-load>
Заголовок Activate-Storage-Access указывает браузеру либо повторить запрос с использованием cookie-файлов, либо загрузить ресурс напрямую с активированным API доступа к хранилищу (SAA). Заголовок может принимать следующие значения:
load: Указывает браузеру предоставить встраиваемому ресурсу доступ к неразделённым файлам cookie для запрошенного ресурса. Включение этого заголовка эквивалентно вызовуdocument.requestStorageAccess()если разрешениеstorage-accessбыло предоставлено. Пользователю не будет показано никаких дополнительных запросов.retry: Сервер отвечает, что браузер должен активировать разрешение на доступ к хранилищу, а затем повторить запрос.
Activate-Storage-Access: retry; allowed-origin="https://site.example"
Activate-Storage-Access: retry; allowed-origin=*
Activate-Storage-Access: load
Основные преимущества
Использование заголовков доступа к хранилищу (Storage Access Headers) — это рекомендуемый, более производительный способ применения API доступа к хранилищу (SAA). В целом, это изменение вносит ряд улучшений:
- Поддержка встраивания контента, отличного от iframe: включает SAA для более широкого спектра ресурсов.
- Снижение нагрузки на сеть: меньше запросов и меньший объем передаваемых данных.
- Сниженное использование ЦП: Меньше обработки JavaScript.
- Улучшен пользовательский опыт: устранены промежуточные загрузки, нарушающие работу системы.
Обновите ваше решение
При использовании функции заголовков доступа к хранилищу (Storage Access Headers) может возникнуть необходимость обновить код в двух случаях:
- Вы используете SAA и хотите добиться повышения производительности за счет применения логики заголовков к последующим запросам
storage-access. - У вас есть проверка или логика, которая зависит от того, включен ли заголовок
Originв запрос к вашему серверу.
Ознакомьтесь с нашей документацией , чтобы узнать, как использовать заголовки доступа к хранилищу (Storage Access Headers) в вашем решении.
Принимайте участие и делитесь отзывами.
Если у вас есть замечания или вы столкнулись с какими-либо проблемами, вы можете сообщить о них, создав заявку . Вы также можете узнать больше о заголовках доступа к хранилищу (Storage Access Headers) в пояснительной статье на GitHub .