Firefox Push API - AbortError: Ошибка при получении push-подписки

Я использую Firefox Nightly версии 46.0a1 (для OS X только 42 В. Для Push API требуется 43 В.) И я получаю эту ошибку:

DOMException [AbortError: "Error retrieving push subscription"
code: 20
nsresult: 0x80530014]

Вот фрагмент, где эта ошибка в брошенном:

navigator.serviceWorker.ready.then(function (serviceWorkerRegistration) {

        serviceWorkerRegistration.pushManager.subscribe()
            .then(function (subscription) {
                endpoint = subscription.endpoint;
                console.log('subscription endpoint: ', subscription.endpoint);
                subscribeOnServer();
            })
            .catch(function (e) {

                // here that error is raised

                errorNotification.innerHTML = 'Unable to subscribe to push';
            }
        });
    });

в Chrome это место ничего не выбрасывает, и я получаю подписку с соответствующей конечной точкой.

Пожалуйста помоги

3 ответа

Недавно я обнаружил, что эта ошибка может возникнуть, если ваш браузер находится за прокси-сервером, который не поддерживает веб-сокеты (служба push использует веб-сокеты внутри).

Это не бросает для меня.

В вашем фрагменте была синтаксическая ошибка, но я думаю, что это не проблема (в противном случае она бы тоже не работала в Chrome).

Вот фрагмент, который я использовал:

navigator.serviceWorker.ready
.then(function(serviceWorkerRegistration) {
  console.log('asd');
  serviceWorkerRegistration.pushManager.subscribe()
  .then(function(subscription) {
    endpoint = subscription.endpoint;
    console.log('subscription endpoint: ', subscription.endpoint);
  })
  .catch(function(e) {
    console.log(e);
  });
});

Я получил эту ошибку, когда у моего обслуживающего работника были ошибки (пытался получить доступ к несуществующему хранилищу в indexedDb), и поэтому, хотя он был установлен, но push-уведомления не подписывались с указанной выше ошибкой.

Другие вопросы по тегам