Google 致力于为黑人社区推动种族平等。查看具体举措
Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

Configura un'app client JavaScript Firebase Cloud Messaging

L'API JavaScript FCM consente di ricevere messaggi di notifica nelle app Web in esecuzione nei browser che supportano l' API Push . Ciò include le versioni del browser elencate in questa matrice di supporto e le estensioni di Chrome tramite l'API Push.

L'SDK FCM è supportato solo nelle pagine pubblicate su HTTPS. Ciò è dovuto al suo utilizzo di service worker, disponibili solo sui siti HTTPS. Se hai bisogno di un provider, Firebase Hosting è consigliato per l'hosting HTTPS gratuito sul tuo dominio.

Per iniziare con l'API JavaScript FCM, dovrai aggiungere Firebase alla tua app web e aggiungere la logica per accedere ai token di registrazione.

Aggiungi Firebase al tuo progetto JavaScript

Se non l'hai già fatto, aggiungi Firebase al tuo progetto JavaScript .

Se attualmente utilizzi FCM per il Web e desideri eseguire l'upgrade all'SDK 6.7.0 o versioni successive, devi abilitare l' API di registrazione FCM per il tuo progetto in Google Cloud Console. Quando abiliti l'API, assicurati di aver effettuato l'accesso a Cloud Console con lo stesso account Google che utilizzi per Firebase e assicurati di selezionare il progetto corretto. I nuovi progetti che aggiungono l'SDK FCM hanno questa API abilitata per impostazione predefinita.

Configurare le credenziali Web con FCM

L'interfaccia Web FCM utilizza credenziali Web denominate "Identificazione volontaria del server delle applicazioni" o chiavi "VAPID" per autorizzare le richieste di invio ai servizi push Web supportati. Per iscrivere la tua app alle notifiche push, devi associare una coppia di chiavi al tuo progetto Firebase. Puoi generare una nuova coppia di chiavi o importare la tua coppia di chiavi esistente tramite Firebase Console.

Genera una nuova coppia di chiavi

  1. Apri la scheda Cloud Messaging del riquadro Impostazioni della console Firebase e scorri fino alla sezione Configurazione Web .
  2. Nella scheda Certificati Web Push , fare clic su Genera coppia di chiavi . La console visualizza un avviso che la coppia di chiavi è stata generata e mostra la stringa della chiave pubblica e la data aggiunta.

Importa una coppia di chiavi esistente

Se hai una coppia di chiavi esistente che stai già utilizzando con la tua app Web, puoi importarla in FCM in modo da poter raggiungere le istanze dell'app Web esistenti tramite le API FCM. Per importare le chiavi, devi disporre dell'accesso a livello di proprietario al progetto Firebase. Importa la tua chiave pubblica e privata esistente nel formato con codifica sicura dell'URL base64:

  1. Apri la scheda Cloud Messaging del riquadro Impostazioni della console Firebase e scorri fino alla sezione Configurazione Web .
  2. Nella scheda Certificati Web Push , trova e seleziona il testo del collegamento, "importa una coppia di chiavi esistente".
  3. Nella finestra di dialogo Importa una coppia di chiavi , fornire le chiavi pubbliche e private nei campi corrispondenti e fare clic su Importa . La console visualizza la stringa della chiave pubblica e la data aggiunta.

Per istruzioni su come aggiungere la chiave alla tua app, vedi Configurare le credenziali Web nella tua app . Per ulteriori informazioni sul formato delle chiavi e su come generarle, vedere Chiavi del server delle applicazioni .

Recupera un oggetto di messaggistica

const messaging = firebase.messaging();

Configura le credenziali Web nella tua app

Il metodo getToken(): Promise<string> consente a FCM di utilizzare le credenziali della chiave VAPID quando si inviano richieste di messaggi a diversi servizi push. Utilizzando la chiave generata o importata secondo le istruzioni in Configurazione delle credenziali Web con FCM , aggiungila nel codice dopo aver recuperato l'oggetto di messaggistica:

// Add the public key generated from the console here.
messaging.getToken({vapidKey: "BKagOny0KF_2pCJQ3m....moL0ewzQ8rZu"});

Accedi al token di registrazione

Quando è necessario recuperare il token di registrazione corrente per un'istanza dell'app, chiamare getToken . Se l'autorizzazione di notifica non è stata concessa, questo metodo chiederà all'utente le autorizzazioni di notifica. In caso contrario, restituisce un token o rifiuta la promessa a causa di un errore.

Il servizio di messaggistica richiede un file firebase-messaging-sw.js . A meno che tu non abbia già un file firebase-messaging-sw.js , crea un file vuoto con quel nome e inseriscilo nella radice del tuo dominio prima di recuperare un token. È possibile aggiungere contenuto significativo al file in un secondo momento durante il processo di configurazione del client.

Per recuperare il token corrente:

// Get registration token. Initially this makes a network call, once retrieved
// subsequent calls to getToken will return from cache.
messaging.getToken({ vapidKey: '<YOUR_PUBLIC_VAPID_KEY_HERE>' }).then((currentToken) => {
  if (currentToken) {
    // Send the token to your server and update the UI if necessary
    // ...
  } else {
    // Show permission request UI
    console.log('No registration token available. Request permission to generate one.');
    // ...
  }
}).catch((err) => {
  console.log('An error occurred while retrieving token. ', err);
  // ...
});

Dopo aver ottenuto il token, inviarlo al server delle app e archiviarlo utilizzando il metodo preferito.

Prossimi passi

Dopo aver completato i passaggi di configurazione, ecco alcune opzioni per andare avanti con FCM per il Web (JavaScript):