reg.pushManager.subscribe никогда не выполняется

Я пытаюсь включить push-уведомление через Интернет, но после звонка reg.pushManager.subscribe обещание не выполнено.

async enablePushNotification() { // CALLED ON USER CLICK
  try {
    const status = await Notification.requestPermission();
    if (status === 'granted') {
      const reg = await navigator.serviceWorker.ready;
      this.updateSubscriptionOnServer(reg);
    }
  } catch (error) {
    console.log('Error enabling push notification', error);
  }
}

async updateSubscriptionOnServer(reg) {
  try {
    const newSubscription = await reg.pushManager.subscribe({
      userVisibleOnly: true,
      applicationServerKey: urlB64ToUint8Array(VAPID_PUBLIC),
    });

    // BELLOW IS NEVER CALLED
    console.log('Subscription', newSubscription);
    const hasSubscription = !(newSubscription === null);
    this.setState(setHasSubscribed(hasSubscription));
    subscribeToPushNotification(newSubscription); // CALL API
  } catch (e) {
    console.error('Ops', e);
  }
}

Что я делаю не так?

0 ответов

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