web-dev-qa-db-fra.com

Firebase: envoyer une notification avec l'API REST

Est-il possible d'envoyer une notification Push avec REST sur Firebase? Je peux envoyer des notifications avec la console Firebase mais j'ai besoin d'envoyer des notifications avec REST.

7
cimenmus

cela peut aider - https://firebase.google.com/docs/cloud-messaging/http-server-ref où un exemple de message que vous pouvez trouver ici - https: // firebase. google.com/docs/cloud-messaging/downstream

à partir de la console Firebase, vous pouvez obtenir la clé du serveur comme une autorisation que vous mettez dans l'en-tête http, dans l'onglet Messagerie cloud.

Juste pour aider,

Si quelqu'un veut utiliser REST POST API, le voici, utilisez le facteur avec la configuration ci-dessous)

URL:
https://fcm.googleapis.com/fcm/send

En-tête:

"Content-Type": "application/json",
"Authorization": "key=<Server_key>"

CORPS:

{
    "to": "<Device FCM token>",
    "notification": {
      "title": "Check this Mobile (title)",
      "body": "Rich Notification testing (body)",
      "mutable_content": true,
      "sound": "Tri-tone"
      },

   "data": {
    "url": "<url of media image>",
    "dl": "<deeplink action on tap of notification>"
      }
}

C'est tout. Merci!!!

Si vous souhaitez obtenir plus de détails sur Rich Notification with FCM, vous pouvez consulter mon article sur Medium Rich Push Notification with Firebase Cloud Messaging (FCM) and Pusher on iOS platform

14
Ashis Laha

Utilisation d'ARC pour envoyer une demande à la console Firebase pour envoyer une notification Using ARC For Sending Request to Firebase Console To Send Notification

Vous pouvez utiliser ARC OR Postman ou votre propre serveur pour envoyer une notification. Vous devez récupérer votre web_server_key à partir de la console et vous devez spécifier la clé d'enregistrement unique que vous obtiendrez de l'application lors de l'appel de la méthode onRefreshToken().

Vous devez envoyer la demande à https://fcm.googleapis.com/fcm/send avec Content-Type: json et Autorisation: web_server_key . On Pour valoriser l'utilisateur votre app_registration_token.

6
Piash Sarker

J'ai utilisé l'API de repos ci-dessous pour envoyer une notification.

curl -X POST \
  https://fcm.googleapis.com/fcm/send \
  -H 'Authorization: key=AAAAG-oB4hk:APA91bFUilE6XqGzlqtr-M-LRl1JisWgEaSDfMZfHuJq3fs7IuvwhjoGM50i0YgU_qayJA8FKk15Uvkuo7SQtQlVt4qdcrrhvnfZyk_8zRGAskzalFUjr2nA2P_2QYNTfK6X8GbY0rni' \
  -H 'Content-Type: application/json' \
  -H 'Postman-Token: c8af5355-dbf2-4762-9b37-a6b89484cf07' \
  -H 'cache-control: no-cache' \
  -d '{
    "to": "ey_Bl_xs-8o:APA91bERoA5mXVfkzvV6I1I8r1rDXzPjq610twte8SUpsKyCuiz3itcIBgJ7MyGRkjmymhfsceYDV9Ck-__ObFbf0Guy-P_Pa5110vS0Z6cXBH2ThnnPVCg-img4lAEDfRE5I9Gd849d",
    "data":{
        "body":"Test Notification !!!",
        "title":"Test Title !!!"
    }

}'

Autorisation: clé = AAAAG-oB4hk: APA91bFUilE6XqGzlqtr-M-LRl1JisWgEaSDfMZfHuJq3fs7IuvwhjoGM50i0YgU_qayJA8FKk15Uvkuo7SQtQlVt4qdZrkVKF

où key est web_server_key à partir de la console et vous devez spécifier la clé d'enregistrement unique que vous obtiendrez de l'application.

enter image description here

" à ": "ey_Bl_xs-8o: APA91bERoA5mXVfkzvV6I1I8r1rDXzPjq610twte8SUpsKyCuiz3itcIBgJ7MyGRkjmymhfsceYDV9Ck -__ ObFbf0Guy-P_Pa5110vS0Z6cXBH2ThnnPVCg-img4lAEDfRE5I9Gd849d" est l'enregistrement de la FCM jeton à partir du dispositif. Veuillez vous référer au lien ci-dessous.

https://firebase.google.com/docs/cloud-messaging/Android/client?authuser=

4
dassum

Nous avons utilisé ce qui suit documentation pour envoyer des notifications à partir d'un client Web.

Il existe un moyen simple d'envoyer une notification via Chrome App ou extension.

function sendMessage() {
  var message = {
    messageId: getMessageId(),
    destinationId: senderId + "@gcm.googleapis.com",
    timeToLive: 86400,    // 1 day
    data: {
      "key1": "value1",
      "key2": "value2"
    }
  };
  chrome.gcm.send(message, function(messageId) {
    if (chrome.runtime.lastError) {
      // Some error occurred. Fail gracefully or try to send
      // again.
      return;
    }
1
Siddharth