6

我正在使用 Firefox Nightly 46.0a1 版本(OS X 只有 42v,而 Push API 需要 43v)。

我收到了这个错误:

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 中,这个地方不会抛出任何东西,我通过正确的端点获得订阅。

4

3 回答 3

1

我最近发现,如果您的浏览器位于不支持 Web 套接字的代理后面(推送服务在内部使用 Web 套接字),则可能会出现此错误。

于 2021-03-16T12:37:22.043 回答
1

它不适合我。

您的代码段中有语法错误,但我想这不是问题(否则它也会在 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);
  });
});
于 2016-01-20T18:19:36.940 回答
0

当我的服务人员出现错误时(尝试访问 indexedDb 中不存在的存储),我收到此错误,因此即使它已安装但推送通知未订阅上述错误。

于 2021-07-06T20:03:20.233 回答