1

Ich versuche, Benachrichtigungen von meiner ionischen App mit Firebase Cloud Messaging zu senden. Ich habe FCM Plugin installiert, indem ich die folgenden Schritte befolge:Benutzer zu Benutzerbenachrichtigung mit ionic-app mit Hilfe von Frirebase cloud Messaging

cordova plugin add cordova-plugin-fcm 

npm install --save @ionic-native/fcm 

Und bis dahin funktioniert alles gut. Ich benutze http-Plugin von ionischen nativen zu senden Benachrichtigung über die FCM Rest api mit einer Post Anfrage. So installierte ich das http Plugin mit den folgenden Befehlen:

cordova plugin add cordova-plugin-advanced-http 

npm install --save @ionic-native/http 

Und ich eingeschlossen FCM und HTTP-Module in meinem app.modules.ts In einem meinem Controller, hier ist, wie ich sende die Post-Anforderung:

this.http.post('https://fcm.googleapis.com/fcm/send', 
    { 
     "notification": { 
      "title": "Notification title", 
      "body": "Notification body" 
     }, 
     "data": { 
      "key1": "value1", 
      "key2": "value2" 
     }, 
     "to": "/topics/all", 
     "priority": "high" 
    }, 
    { 
     "Content-type": "application/json", 
     "Authorization": "key=serverkey" 
    } 
).catch(error=>{ 
    alert(error.error); 
}) 

ich nahm den ServerKey Wert von Feuerbasis Konsole. Wenn ich also die Post-Anfrage sende, werden keine Fehlermeldungen angezeigt, aber keine Benachrichtigungen gesendet.

Irgendwelche Hilfe? Vielen Dank.

+0

Ich versuche, genau das Gleiche, aber ich bekommen eine Fehlermeldung, die lautet: JSON_PARSING_ERROR: Unerwartetes Zeichen (d) an Position 0. – macduff

+0

@macduff Nach meiner Meinung ist der beste Weg zum Senden von Benachrichtigungen mit Firebase Firebase Cloud-Funktionen zu verwenden. es ist ziemlich einfach und effizienter als die Verwendung des HTTP-Plugins und der FCM-Rest-API. Es ist die Lösung, die ich schließlich benutzt habe. Und die Benachrichtigung wird korrekt gesendet. –

Antwort

0

Versuchen Sie Folgendes vor Ihrem Beitrag hinzugefügt, so dass die Objekt Argumente als JSON codiert werden

this.http.setDataSerializer("json") 

Dieses mein Problem gelöst (siehe Kommentar)

Verwandte Themen