Spec-Zone.ru › Web APIs

Ответ: статический метод error()

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

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

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

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

Статический метод error() интерфейса Response возвращает новый объект Response , связанный с ошибкой сети.

Это полезно в первую очередь при написании сервисных рабочих процессов: это позволяет сервисному рабочему процессу отправлять ответ из обработчика события fetch, что вызовет отказ обещания при вызове fetch() в коде основного приложения.

Ответ с ошибкой имеет свойство type, установленное в значение error.

Синтаксис

Response.error()

Параметры

Нет.

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

Объект Response.

Примеры

Возвращение ошибки сети из сервисного рабочего процесса

Предположим, что веб-приложение имеет сервисный рабочий процесс, который содержит следующий обработчик события fetch:

// service-worker.js

self.addEventListener("fetch", (event) => {
  const url = new URL(event.request.url);
  if (url.pathname === "/salamander.jpg") {
    event.respondWith(Response.error());
  }
});

С этим сервисным рабочим процессом все запросы fetch из приложения будут проходить через сервисный рабочий процесс в сеть, за исключением запросов для "salamander.jpg", которые будут отклонены. Это означает, что следующий код на основном потоке вызовет ошибку, и будет запущен обработчик catch.

// main.js

const image = document.querySelector("#image");

try {
  const response = await fetch("salamander.jpg");
  const blob = await response.blob();
  const objectURL = URL.createObjectURL(blob);
  image.src = objectURL;
} catch (e) {
  console.error(e);
}

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

Спецификация
Fetch
# ref-for-dom-response-error①

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

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на IOS Samsung Internet WebView Android
error_static 43 16 39 30 10.1 43 39 30 10.3 4.0 43

См. также

  • API сервисных рабочих процессов
  • Контроль доступа к HTTP (CORS)
  • HTTP

© 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/Response/error_static

Spec-Zone.ru

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