Spec-Zone.ru › HTTP

Заголовки: Service-Worker-Allowed

Заголовок Service-Worker-Allowed

Заголовок HTTP Service-Worker-Allowed ответа используется для расширения ограничения пути по умолчанию для scope сервис-воркера.

По умолчанию scope регистрации сервис-воркера — это каталог, в котором находится скрипт сервис-воркера. Например, если скрипт sw.js находится в /js/sw.js, по умолчанию он может управлять только URL-адресами в пределах /js/. Серверы могут использовать заголовок Service-Worker-Allowed, чтобы разрешить сервис-воркеру управлять URL-адресами за пределами его собственного каталога.

Сервис-воркер перехватывает все сетевые запросы в пределах своей области действия, поэтому не следует использовать слишком широкие области действия без необходимости.

Тип заголовка Заголовок ответа

Синтаксис

Service-Worker-Allowed: <scope>

Директивы

<scope>

Строка, представляющая URL-адрес, который определяет область регистрации сервис-воркера, то есть диапазон URL-адресов, которыми может управлять сервис-воркер.

Примеры

>

Использование Service-Worker-Allowed для расширения области действия сервис-воркера

Пример JavaScript ниже находится в example.com/product/index.html и пытается зарегистрировать сервис-воркер с областью действия, охватывающей все ресурсы в example.com/.

navigator.serviceWorker.register("./sw.js", { scope: "/" }).then(
  (registration) => {
    console.log("Install succeeded, scoped to '/'", registration);
  },
  (error) => {
    console.error(`Service worker registration failed: ${error}`);
  },
);

HTTP-ответ на запрос ресурса скрипта сервис-воркера (./sw.js) содержит заголовок Service-Worker-Allowed со значением /:

HTTP/1.1 200 OK
Date: Mon, 16 Dec 2024 14:37:20 GMT
Service-Worker-Allowed: /

// sw.js contents…

Если сервер не установит этот заголовок, регистрация сервис-воркера завершится ошибкой, поскольку параметр scope ({ scope: "/" }) задаёт область действия, которая шире каталога, где находится скрипт сервис-воркера (/product/sw.js).

Спецификации

Спецификация
Service Workers Nightly>
# service-worker-allowed>

Совместимость с браузерами

Настольные компьютеры Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome для Android Firefox для Android Opera для Android Safari на iOS Samsung Internet WebView для Android WebView на iOS
Service-Worker-Allowed 42 16 40 29 11.1 42 40 29 11.3 4.0 42 11.3

См. также

  • заголовок Service-Worker
  • API сервис-воркеров
  • ServiceWorkerRegistration
  • Почему не удаётся зарегистрировать сервис-воркер в статье Использование сервис-воркеров.

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Service-Worker-Allowed

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API