Следующие демонстрации показывают, как браузер обрабатывает файлы cookie в зависимости от того, как они используются:
- Основные файлы cookie : устанавливаются сайтом, который вы посещаете.
- Сторонние файлы cookie : устанавливаются другим сайтом.
Демонстрация cookie-файлов от первой стороны
Демо: 1pc.glitch.me
Демонстрационная страница включает изображение и iframe с того же сайта, что и страница верхнего уровня.
Заголовок Set-Cookie
включается в ответ на запросы как изображения, так и iframe, но заголовки Set-Cookie
имеют разные значения Path
и Max-Age
.
Демонстрация сторонних файлов cookie
Демо: 3pc.glitch.me
Изображение и iframe на демонстрационной странице взяты с другого сайта: 3p-site.glitch.me .
Заголовок Set-Cookie
включается в ответ на запрос как для изображения, так и для iframe. Однако заголовки ответа Set-Cookie
для изображения и iframe имеют разное значение SameSite
, и это влияет на их обработку браузером.
В этой демонстрации показано, как сторонние файлы cookie могут блокироваться ограничениями браузера, настройками пользователя, флагами разработчика или политикой предприятия.
Узнать больше:
Демонстрация файлов cookie JavaScript
Демо: javascript-cookie.glitch.me
JavaScript, включенный в демонстрационную страницу, устанавливает cookie-файл:
document.cookie = 'cat=tabby';
После установки этот файл cookie включается в запросы к ресурсам на javascript-cookie.glitch.me . Он считается основным файлом cookie, поскольку устанавливается сайтом, который вы посещаете. Если тот же JavaScript-код вызывается в межсайтовом iframe, браузер будет воспринимать его как сторонний файл cookie.
Демонстрация cookie-файлов SameSite
Эта демонстрация состоит из двух веб-страниц, каждая из которых находится на отдельном сайте.
Каждая из этих страниц включает в себя:
- Изображение с другого сайта.
- Ссылка на другой сайт.
Оба сайта устанавливают cookie-файл в ответ на запросы, используя значение SameSite
по умолчанию Lax
.
SameSite=Lax
позволяет устанавливать файлы cookie в ответ на запросы межсайтовой навигации (переход по ссылке), но не в других межсайтовых запросах (например, загрузка изображения).
Посетите демонстрационные страницы, чтобы увидеть, как браузер по-разному обрабатывает cookie-файлы SameSite=Lax
при переходе по ссылке и при загрузке изображения.
Демонстрация межсайтового отслеживания файлов cookie
Эта демоверсия состоит из двух сайтов:
Домашние страницы example-a.glitch.me и example-b.glitch.me включают iframe из tracker-site.glitch.me , который использует cookie-файл для отслеживания активности просмотра на страницах, где встроен iframe.
При переходе между example-a.glitch.me и example-b.glitch.me содержимое iframe-трекера обновляется, показывая, что tracker-site.glitch.me отслеживает вашу активность на этих двух сайтах. (Он не встроен ни в один другой сайт.)
В этой демонстрации показано, как трекер может использовать файлы cookie для записи вашей активности на разных сайтах.
Демонстрация пикселя отслеживания
Эта демоверсия состоит из двух сайтов:
Оба включают однопиксельное изображение с tracking-pixel-server.glitch.me , что позволяет использовать cookie-файл для отслеживания вашей активности на сайтах, содержащих это изображение.
На обеих страницах также имеется iframe из tracking-pixel-server.glitch.me, который показывает посещения страниц, зафиксированные для страниц, содержащих пиксель отслеживания.
В этой демонстрации показано, как можно использовать пиксель отслеживания с файлами cookie для записи вашей активности на нескольких сайтах.
Получить демо-файл cookie
Демо: fetch-cookie.glitch.me
JavaScript, включенный в эту страницу, выполняет межсайтовый вызов fetch()
к 3p-site.glitch.me/fetch
, который устанавливает в ответ файл cookie fetch=true
.
Узнать больше
- Что такое файлы cookie?
- Что такое сторонние файлы cookie?
- Атрибуты cookie-файлов
- HTTP-запрос и ответ
- Инструменты для работы с файлами cookie
- Использование HTTP-куки
- Объяснение файлов cookie SameSite