Invia notifiche tempestive e utili ai tuoi utenti.
Le notifiche push sono state standardizzate nel 2016 con il rilascio dell'API Push e dell'API Notification, che fanno parte del gruppo di lavoro Web Applications del W3C. Queste API forniscono le funzionalità necessarie per consentire agli sviluppatori web di incorporare le notifiche push nelle loro applicazioni web e agli utenti di ricevere e interagire con le notifiche sui loro browser web. I messaggi push sono notifiche inviate al browser web di un utente da un sito web o un'applicazione a cui l'utente ha precedentemente concesso l'autorizzazione per l'invio di notifiche. Questi messaggi possono essere utilizzati per avvisare l'utente di nuovi contenuti o aggiornamenti, ricordargli eventi o scadenze imminenti o fornire altre informazioni importanti. I messaggi push possono essere particolarmente utili per le applicazioni che devono fornire informazioni tempestive e pertinenti agli utenti, ad esempio app di notizie o sportive, oppure per i siti web di e-commerce che vogliono inviare agli utenti notifiche su offerte speciali o saldi.
Per registrarti per le notifiche push, controlla innanzitutto se il tuo browser le supporta cercando gli oggetti serviceWorker
e PushManager
negli oggetti navigator
e window
.
Se le notifiche push sono supportate, utilizza le parole chiave async
e await
per registrare il service worker e iscriverti alle notifiche push. Ecco un esempio di come eseguire questa operazione utilizzando JavaScript:
// Check if the browser supports push notifications.
if ("serviceWorker" in navigator && "PushManager" in window) {
try {
// Register the service worker.
const swReg = await navigator.serviceWorker.register("/sw.js");
// Subscribe for push notifications.
const pushSubscription = await swReg.pushManager.subscribe({
userVisibleOnly: true
});
// Save the push subscription to the database.
savePushSubscription(pushSubscription);
} catch (error) {
// Handle errors.
console.error("Error subscribing for push notifications.", error);
}
} else {
// Push notifications are not supported by the browser.
console.error("Push notifications are not supported by the browser.");
}