push-подписка отписалась или просрочена, с statusCode 410 - PullRequest
0 голосов
/ 29 мая 2019

Push-подписка отписалась или просрочена, с statusCode 410, менее чем за 24 часа.

Я использую web-push для отправки уведомлений с помощью fcm-endpoint & vapidDetails.Работает отлично несколько часов, могу отправлять уведомления.Но через несколько часов сохраненная-fcm-endpoint-subscription отписывается или срок действия истекает с statusCode 410, когда я пытаюсь отправить уведомление от серверной части.Я внедряю и проверяю в Heroku.

Приведенный ниже код предназначен для сохранения объекта подписки на сервере / бэкэнде.

                  swReg.pushManager.subscribe({
                    userVisibleOnly: true,
                    applicationServerKey: urlB64ToUint8Array(publicKey),
                  }).then(subscriptionJSON => {
                    saveSubscription(subscriptionJSON);
                  })

После сохранения объекта подписки на сервере,срок его действия истекает всего через несколько часов.

Ошибка выглядит следующим образом:

{ WebPushError: Received unexpected response code
       at IncomingMessage.<anonymous> (/app/node_modules/web-push/src/web-push-lib.js:316:20)
       at IncomingMessage.emit (events.js:194:15)
       at endReadableNT (_stream_readable.js:1125:12)
       at process._tickCallback (internal/process/next_tick.js:63:19)
     name: 'WebPushError',
     message: 'Received unexpected response code',
     statusCode: 410,
     headers:
      { 'content-type': 'text/plain; charset=utf-8',
        'x-content-type-options': 'nosniff',
        'x-frame-options': 'SAMEORIGIN',
        'x-xss-protection': '1; mode=block',
        date: 'Mon, 27 May 2019 10:11:38 GMT',
        'content-length': '47',
        'alt-svc': 'quic=":443"; ma=2592000; v="46,44,43,39"',
        connection: 'close' } 

1 Ответ

0 голосов
/ 23 июня 2019

Проблема с ziet-сервером .

ziet-сервером перестала поддерживать доступ для записи, т.е. fs.write не будет работать.

Так что я не смог сохранить / записать объекты подписки в db-файлы.

Я развернул в Heroku , теперь он работает как положено.

...