Одинаковый источник: схема, хост и порт
Источник веб-страницы определяется сочетанием схемы, имени хоста и порта и участвует в браузерной модели изоляции.
Назначение
Источник веб-страницы определяется сочетанием схемы, имени хоста и порта и участвует в браузерной модели изоляции.
Как это работает
Два URL с разными путями могут иметь один источник. Смена HTTP на HTTPS или смена порта меняет источник даже при одинаковом имени сервера. Понятие site связано с другой группировкой и не равно origin.
Пример
const a = new URL('https://example.com/a');
const b = new URL('https://example.com/b');
const c = new URL('https://example.com:8443/a');
console.assert(a.origin === b.origin);
console.assert(a.origin !== c.origin);
Что должно получиться
Первый и второй адреса имеют общий источник, третий отличается портом. Создание объекта URL лишь разбирает строку и не выполняет сетевого запроса.
Граница применения и частая ошибка
Не считайте два поддомена или два порта автоматически одним источником. Это влияет на чтение ответов, хранилища и взаимодействие документов, даже когда сервер принадлежит одному владельцу.
Самостоятельная проверка
Составьте таблицу для https://example.com/a, https://example.com/b и https://example.com:8443/a. Затем сравните origin через объект URL в отдельной консоли.