Angular PWA swPu sh .requestSubscription () не работает, ошибка: сервисные работники отключены или не поддерживаются этим браузером - PullRequest
0 голосов
/ 26 мая 2020

У меня Ioni c 5 PWA с использованием Angular 8. Я сделал Pu sh Notifications с помощью swPu sh, который работал должным образом до марта. Но с прошлого месяца из-за некоторых других изменений это перестало работать. Я не могу изолировать проблему.

swPush.isEnabled() возвращает false, даже если сервис-воркер зарегистрирован. В коде ничего не изменилось относительно swPu sh и его реализаций. Я попробовал эту неотвеченную ссылку и тоже не помог

Когда я использую PU SH NOTIFICATION API (с помощью PushManager), ошибок НЕТ, все работает, и я я получаю объект подписки обратно. Это проблема с реализацией swPu sh или моя ошибка?

notification-service.ts

this.swPush.requestSubscription({
    serverPublicKey: this.VAPIDPublicKey
  })
  .then((sub: PushSubscription) => {
    const keys: SubscriptionObjectKeys = {
      auth: sub.toJSON().keys.auth,
      p256dh: sub.toJSON().keys.p256dh
    };
    const subscriptionObject: SubscriptionObject = {
      endpoint: sub.endpoint,
      expirationTime: 0,
      keys: keys
    };
    resolve(subscriptionObject);
  })
  .catch(err => {
    console.error('Could not subscribe to notifications', err);
    reject(err);
  });

Ошибка в Chrome

Error: Service workers are disabled or not supported by this browser
at e.requestSubscription (service-worker.js:391)
at notification.service.ts:123
at new D (zone-evergreen.js:960)
at t.<anonymous> (notification.service.ts:103)
at Generator.next (<anonymous>)
at tslib.es6.js:73
at new D (zone-evergreen.js:960)
at o (tslib.es6.js:69)
at t.subscribeToSWPush (common-es2015.ffedc7b115b497dcd514.js:1)
at t.<anonymous> (notification.service.ts:61)

Я проверил это в macOS и Windows 10, а также с HTTP-сервером и SSL. Оба показывают одну и ту же проблему.

Я создал новое приложение Ioni c и реализовал тот же код, который там отлично работает. Я не могу изолировать проблему.

Любое предложение было бы действительно полезным.

...