Я вызываю эту pushManager.subscribe
функцию следующим образом:
return navigator.serviceWorker.register(process.env.PUBLIC_URL + '/sw-notifications.js').then(function(registration) {
let subscribeOptions = {
userVisibleOnly: true,
applicationServerKey: urlBase64ToUint8Array(publicKey)
};
return registration.pushManager.subscribe(subscribeOptions);
})
.then(function(pushSubscription) {
return pushSubscription;
});
Это отлично работает, и возвращает объект, который выглядит следующим образом:
{"endpoint":"https://fcm.googleapis.com/fcm/send/foo:bar","expirationTime":null,"keys":{"p256dh":"key","auth":"key"}}
В документации сказано для отправки запроса POST на URL-адрес endpoint
для отправки пользователю уведомления pu sh.
К сожалению, не указывает , какой тип тела использовать для этого запроса.
Я попытался поискать в Интернете и нашел эту страницу , в которой говорится, что это устаревший API.
Теперь я запутался. Почему PushManager
на последнем Chrome возвращает устаревший API? Должен ли я использовать что-то еще? Или это все еще хорошо для использования?
Я пытаюсь включить уведомления pu sh для моего сайта и не могу точно определить, как все эти кусочки головоломки совмещаются.