Описание тега service-worker
Service worker- это код JavaScript, который после регистрации со связанным источником и областью действия будет реагировать на события, инициированные браузером, даже если страницы, которые он контролирует, больше не открываются. Обрабатывая события `fetch`, сервис-воркеры могут обеспечивать настраиваемое сетевое поведение, например автономную поддержку (через Cache API). Обрабатывая события push, сервисные работники могут быть "разбужены" и отображать уведомления.
2
ответа
Как воспроизвести звук при получении push-уведомления в сервисном рабочем Chrome?
Я хочу воспроизводить аудио, такие как WhatsApp, push-уведомления или телеграммы. Я уже в состоянии получить push-уведомление в сервис-работнике, проблема в том, как воспроизвести аудио, когда push-уведомление получено? Я уже читал документацию по A…
25 авг '16 в 22:42
1
ответ
Сервисный работник не инициирует исходный запрос после выполнения предварительного запроса
Я пытаюсь сделать запрос GET/POST с fetch в файле сервисного рабочего, но он отправляет только запрос OPTIONS, а не отправляет мой исходный запрос. ниже мой код: fetch('http://cross-origin-server/controller/function',{ headers: { "x-app-header": 'ap…
30 окт '17 в 07:30
1
ответ
Как открыть новое окно браузера из Service Worker
Есть ли способ открыть новое окно браузера из Service Worker, как window.open(...)? Clients.openWindow() или же WindowClient.navigate() не то что мне нужно, а открываю только новую вкладку.
07 июл '17 в 12:53
0
ответов
Как получить multipart/form-data из запроса в сервис-сервис для Chrome
Я вижу в API, что есть req.formData() однако в настоящее время это не поддерживается в Chrome. self.addEventListener('fetch', function(event) { var req = event.request; if(req.method == "POST"){ //Not available in chrome req.formData().then(function…
22 фев '17 в 14:32
0
ответов
Служащий заставляет JS бежать дважды
Я реализовал сервисный работник из pwabuilder.com, и он работает просто отлично Проблема в том, что рабочий сервис работает, даже если браузер подключен к сети, поэтому каждая функция js запускается дважды: одна из работника сервиса и одна из моих д…
26 окт '18 в 12:10
1
ответ
Почему браузер загружает работника сервиса при выходе из сети и вызывает "При извлечении скрипта произошла неизвестная ошибка"?
Я регистрирую работника сервиса с этим кодом: // If the browser supports serviceWorker, and we haven't registered any - we'll register our: sw.js .. if ('serviceWorker' in navigator && !navigator.serviceWorker.controller) { navigator.service…
21 янв '17 в 18:40
1
ответ
Не удалось выполнить 'postMessage' на 'ServiceWorker': не удалось клонировать функцию
Я пытаюсь отправить сообщение экземпляру сервисного работника. Я получаю следующую ошибку: Не удалось выполнить postMessage для ServiceWorker: function (){ obj.removeListener(ev, fn); } не может быть клонирован. Мой код выглядит следующим образом: v…
10 сен '17 в 20:44
0
ответов
Создать-реагировать-приложение, работник службы и загрузки
У меня есть два проекта, скажем, API и UI. API - это приложение на флеш-питоне, оно построено с помощью create-реагировать-приложение. Во время разработки у меня есть экспресс-прокси API, и все отлично. Во время производственной сборки я использую с…
20 окт '17 в 17:22
1
ответ
Сервисный работник не работает для мобильного Интернета (Chrome, Firefox, IE)
Я настроил сервисного работника для статического веб-приложения, которое должно работать на мобильных телефонах. Я использую React / WebPack2 для этого приложения. Service Worker прекрасно работает и работает, когда я открываю приложение через рабоч…
11 июл '17 в 03:11
0
ответов
Облачный обмен сообщениями Firebase с запросом Oauth2
Вот мой код: curl -X POST -H "Authorization: Bearer XXXX(which is my ApiKey set in firebase.initializeApp())" -H "Content-Type: application/json" -d '{ "message":{ "notification": { "title": "FCM Message", "body": "This is an FCM Message", }, "token…
26 июн '18 в 18:22
2
ответа
Service Worker - Uncaught (в обещании) TypeError: Не удалось получить
Я сделал веб-приложение и использовал работника службы в своем приложении. Все нормально работает в сети. Все файлы кэшируются при первом запуске приложения. Но я получаю эту ошибку, когда она отключается. Uncaught (in promise) TypeError: Failed to …
19 июн '17 в 10:54
1
ответ
Событие синхронизации работника службы больше не запускается после первого сбоя
Это мой код события синхронизации. Я делаю неправильно, обрабатывая обещание метода sync()? Разве я не должен обрабатывать обещание, которое находится внутри метода event.waitUntil()? `self.addEventListener('sync', function(event) { if (event.tag ==…
19 июн '17 в 08:37
1
ответ
Баннеры установки Chrome Web App не работают
Я следую очень простому баннеру установки приложения для Chrome 42+, используя приведенные здесь инструкции, но он не отображается. Сервисный работник зарегистрирован, сервер работает по протоколу HTTPS и manifest.json выглядит так: { "name": "appNa…
28 окт '15 в 18:23
1
ответ
Сервисный работник: перенаправление пользователя на другой URL, когда он нажимает на уведомление
Этот фрагмент кода помогает либо выделить вкладку приложения, либо открыть новую вкладку с этим URL-адресом. Если вкладка уже открыта, есть ли способ изменить URL-адрес (в зависимости от уведомления, на которое нажал пользователь). event.waitUntil( …
13 сен '16 в 18:42
1
ответ
Как кешировать подписанные файлы (Сервисный работник)
Несколько интерфейсных приложений реализуют шаблон подписи в файлах для управления кешем, и каждое изменение в файле изменяет подпись. Как мне заставить Service Worker обрабатывать эти подписи и кеш? Примеры подписи: SW-d58e3582afa99040e27b92b13c8f2…
30 май '18 в 20:22
0
ответов
Service Worker не работает, вызывая ошибку сети, когда файл слишком большой или медленная скорость
Я пытаюсь сделать простую кнопку загрузки для работы с данными фиктивного файла, но по какой-то причине, о которой я не знаю, я получаю ошибку сети. По сути, я делаю запрос конкретного файла сервисному работнику, который готов передать поток Readabl…
09 дек '16 в 15:09
0
ответов
Ссылка на прогрессивное уведомление веб-приложения на YouTube
Я показываю уведомление внутри PWA, и мне нужно правильно обработать щелчок. try { navigator.serviceWorker.getRegistration() .then(reg => { reg.showNotification("Videoclip!", { body: "click here!", icon: "images/she_is_fire.png", vibrate: [100, 5…
01 фев '18 в 11:10
1
ответ
Показывать автономный кеш, когда сервер недоступен
Можно ли показать автономный кеш моего сайта, когда сервер не работает? Все примеры, которые я могу найти относительно автономных страниц, связаны с тем, что клиент находится в автономном режиме. Мне нужно показать пользователю кэшированную версию м…
13 ноя '17 в 10:21
1
ответ
Кэширование / сохранение сгенерированных файлов с помощью Angular (Service Worker или другими способами)
У меня есть некоторые проблемы с моим работником службы Angular. Я получаю сгенерированные PDF-файлы из веб-сервиса. После того, как я их получу, мне нужно их кэшировать, чтобы я мог использовать их в автономном режиме. Мой первый подход к размышлен…
12 мар '18 в 13:15
1
ответ
Как установить пользовательский UserAgent в сервис-работнике?
У меня есть некоторый код на стороне сервера, который зависит от userAgent. код работал нормально, потому что мы настраивали пользовательский агент на стороне клиента. но после включения PWA на нашем сайте я не получаю свой пользовательский агент. Я…
30 авг '18 в 10:25