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-уведомления не подписывались с указанной выше ошибкой.