Spec-Zone.ru › Web APIs

NavigationPreloadManager: метод setHeaderValue()

Базовая версия Широко доступна

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с апреля 2018 года.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS), в некоторых или во всех поддерживающих браузерах.

Примечание: Эта функция доступна в рабочих потоках.

Метод setHeaderValue() интерфейса NavigationPreloadManager устанавливает значение заголовка Service-Worker-Navigation-Preload, который будет отправлен с запросами, полученными в результате операции fetch(), выполненной во время предварительной загрузки навигации рабочим потоком. Он возвращает пустой Promise, который разрешается значением undefined.

Наличие заголовка Service-Worker-Navigation-Preload в запросах предварительной загрузки позволяет серверам настраивать возвращаемый ресурс по-разному для запросов предварительной загрузки и обычных запросов fetch. Значение по умолчанию — true; этот метод позволяет настроить несколько разных ответов на запросы предварительной загрузки.

Примечание: Если установка этого заголовка может привести к возврату другого ответа, сервер должен установить Vary: Service-Worker-Navigation-Preload для обеспечения кеширования разных ответов.

Синтаксис

setHeaderValue(value)

Параметры

value

Произвольное строковое значение, которое сервер использует для определения возвращаемого ресурса.

Возвращаемое значение

Promise, который разрешается значением undefined.

Исключения

InvalidStateError DOMException

Нет активного рабочего потока, связанного с регистрацией, к которой принадлежит этот объект NavigationPreloadManager.

Примеры

Ниже показан пример установки значения.

navigator.serviceWorker.ready
  .then((registration) =>
    registration.navigationPreload.setHeaderValue(newValue),
  )
  .then(() => console.log("Done!"))
  .catch((e) =>
    console.error(`NavigationPreloadManager not supported: ${e.message}`),
  );

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

Спецификация
Рабочие потоки
# dom-navigationpreloadmanager-setheadervalue

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

Рабочий стол Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari на iOS Samsung Internet WebView Android
setHeaderValue 59 18 99 46 15.4 59 99 43 15.4 7.0 59

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/NavigationPreloadManager/setHeaderValue

Spec-Zone.ru

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