2016-10-28 2 views
2

Mein Back-End verwendet Node.js mit Express.js und behandelt APN mit dem npm apn-Paket, das Apples neue Provider-Authentifizierungstoken verwendet. Die iOS-App hat die Berechtigung erhalten und das empfangene 32-Byte-Geräte-Token an das Back-End gesendet und als base64-Zeichenfolge codiert. AberSenden eines APN gibt BadDeviceToken zurück, was sollte das DeviceToken-Format sein?

bei dem Versuch, eine Push-Benachrichtigung mit dem Gerät Token zu senden (codiert als ascii, UTF-8 oder base64), der APN-Server gibt -

{"sent":[],"failed":[{"device":"....token....","status":"400","response":{"reason":"BadDeviceToken"}}]} 

Was soll das Token-Format sein, wenn auf APN-Server gesendet?

Antwort

0

Nach Stunden im Internet, Lager über APNs Provider API Suche unter APNs Notification API wurde erwähnt, dass -

Für die device-token Parameter für das Zielgerät des hexadezimale Bytes des Gerät Token angeben.

Welche funktionierte. Das Geräte-Token sollte als hexadezimale Bytes codiert sein.

// Node.js snippet 
let deviceToken = Buffer.from(base64Token, 'base64').toString('hex'); 
+0

gleiche Sache hier @AjitejKaushik, könnten Sie es herausfinden? Ich habe https://github.com/node-apn/node-apn/issues/506 gesehen, aber ohne Glück – mariomol

+0

Ich fand heraus, dass das Problem mit der Umgebung war, die ich setzte, waren die Zertifikate der Produktion während der Token Ich habe versucht zu verwenden war der Inszenierung. –

+0

Down-Abstimmung ist vor allem für unabhängige oder wirklich schlechte Antwort gedacht, wenn es für Sie nicht funktioniert, einfach weiter suchen. Wenn Sie eine Antwort finden, schreiben Sie sie hier unten, zum Beispiel sollte @AjitejKaushik den letzten Kommentar als separate Antwort auf diese Frage einfügen. Auf diese Weise stimmt jeder Zuschauer für die Antwort, die für ihn arbeitete. Keine Notwendigkeit, andere Antworten zu reduzieren, es ist kein Wettbewerb. – Kof

Verwandte Themen