Firebase Cloud Messaging - So überprüfen Sie Tokens?

10

Ich verwende Firebase Cloud Messaging (FCM) und den unten aufgeführten Code, wenn ein neues Token auf dem Kundengerät generiert wird ... Ich sende dieses neue TOKEN an meine SERVER DB (Cloud), wo ich es in der Reihenfolge speichern kann um zukünftige Push-Benachrichtigungen mithilfe der CFM-API vom Server an das Gerät senden zu können.

%Vor%

Dadurch habe ich auf dem Server eine Liste von ALLEN (vielfachen) Geräten, bei denen ein Kunde angemeldet ist. (Tablet, Telefon, iPhone, Android, usw.)

Gibt es eine Möglichkeit, ein Token jederzeit zu überprüfen / zu validieren?

Ich möchte wissen / sicherstellen, dass alle Token, die ich einem Kunden zugeordnet habe, echten Geräten gehören. Ich möchte keine Push-Benachrichtigungen an nicht vorhandene Token senden.

    
G305 18.07.2016, 17:10
quelle

4 Antworten

7

So etwas gibt es nicht, die einzige Information, die Sie von einem Token erhalten können, ist App-Information und nicht, ob sie gültig ist oder nicht

Ссылка

Was Sie tun sollten, ist auf die Antwort zu achten, wenn Sie Push-outs senden und wenn die Keys nicht mehr gültig sind, wird Ihnen die Antwort sagen, welche Keys mit NotRegistered

gelöscht werden sollen

Ссылка

    
tyczj 18.07.2016 17:27
quelle
3

Hier ist eine Beispiel-Anforderung, die zeigt, wie ein Token validiert wird, ohne dass tatsächlich eine Nachricht gesendet werden muss:

%Vor%

Beispiel für eine ungültige Antwort:

%Vor%

Beispiel gültige Antwort:

%Vor%

Ich habe diese Antwort vom Supportteam von Google erhalten.

    
AngularNerd 15.08.2017 17:07
quelle
2

Es gibt keine Möglichkeit zu überprüfen, ob ein Token noch gültig ist, bevor die Downstream-Nachricht gesendet wird. Was Sie tun müssen, ist die Antwort nach dem Senden der Nachricht zu überprüfen und dann zu überprüfen, ob die Antwort einen Fehler enthält.

Wenn der Server beispielsweise einen 200 + error:NotRegistered http-Code zurückgibt, bedeutet dies, dass ein vorhandenes Registrierungs-Token möglicherweise nicht mehr gültig ist.

Im Abschnitt " Fehlercodes für nachgeschaltete Nachrichten des FGC ", finden Sie dokumentiert jede mögliche Statusantwort.

    
Víctor Albertos 18.07.2016 17:48
quelle
0

Tatsächlich gibt es einen Workaround, Sie können dry_run = true

verwenden
  

Wenn dieser Parameter auf "true" gesetzt ist, können Entwickler eine Anfrage testen, ohne tatsächlich eine Nachricht zu senden.

Firebase-Dokumentation

Wenn der Benutzer sich abmeldet, haben Sie eine Antwort mit NotRegistered , aber echtes Senden wird nicht durchgeführt

    
FDG 30.03.2018 14:39
quelle