2016-08-03 37 views
0

ich teste web push auf meinem lokalen. unter Befehl gibt mir den Stoß, wenn ich den Endpunkt auf Chrom gefangen nehme.web push notificaiton auf mozilla

curl --header "Authorization: key=XXXXXXXXXXXX" --header "Content-Type: application/json" https://android.googleapis.com/gcm/send -d "{\"registration_ids\":[\"fs...Tw:APA...SzXha\"]}" 

aber wenn ich Endpunkt auf Mozilla zulassen und erfassen. Antwort von oben Befehl:

{"multicast_id":############,"success":0,"failure":1,"canonical_ids":0,"results":[{"error":"InvalidRegistration"}]} 

Endpunkt i auf mozilla empfangen 14: 20: 55.180 Endpunkt: "https://updates.push.services.mozilla.com/wpush/v1/gAAAAABXobDz85y9Aqz5wn0PVS4ka-p7ESp8fviKNzDPQPWfR4kZfsgUZVx7MauSN4udurIBVlC8-LdG8hsC6jOchCNMEQ2vJ5pK9n-HVf2GpQm7PP6GrsfOjjIeP_uOJDOcMLD7GZKE"1 main.js:8:13

Antwort

0

Sie müssen eine POST-Anforderung tun:

https://updates.push.services.mozilla.com/wpush/v1/gAAAAABXobDz85y9Aqz5wn0PVS4ka-p7ESp8fviKNzDPQPWfR4kZfsgUZVx7MauSN4udurIBVlC8-LdG8hsC6jOchCNMEQ2vJ5pK9n-HVf2GpQm7PP6GrsfOjjIeP_uOJDOcMLD7GZKE 

Sie können nicht verwenden GCM für Mozilla. GCM ist nur für Chrome verfügbar.

+0

Ich stimmte zu, dass gcm für Chrom ist. was ich bin gefragt ist, wenn ich curl Befehl „v1/gAAAAABXobDz85y9Aqz5wn0PVS4ka-p7ESp8fviKNzDPQPWfR4kZfsgUZVx7MauSN4udurIBVlC8-LdG8hsC6jOchCNMEQ2vJ5pK9n-HVf2GpQm7PP6GrsfOjjIeP_uOJDOcMLD7GZKE“, wie mein Endpunkt laufen, sagt er ** ** InvalidRegistration –

+0

Wie gesagt GCM sagt, es ist ungültig, weil die Registrierung Mozilla gehört, nicht zu GCM. BTW haben Sie in Betracht gezogen, einen Dienst wie Pushpad zu verwenden, um die Dinge einfacher zu machen? – collimarco

1

Hier ist eine einfache Demo, die in beiden Browsern Google Chrome und Mozilla Firefox funktioniert: https://serviceworke.rs/push-simple_demo.html

Versuchen Sie es in beiden Browsern zu öffnen und Sie werden sehen, die verbinden Sie eine Push-Nachricht zu senden, verwenden für Browser und ein Unterschied zwischen Links für Google Chrome und Mozilla Firefox. Für mich sind die Links:

Google Chrome

curl -H "TTL: 60" -X POST https://android.googleapis.com/gcm/send/f3WCPreREPE:APA91bHqGD-Oc4o8LqxnuepBvw4SGtIlFeyxP0F2ksMjxPH9yZxLfGZx_6aN7X9cqiSvIQGN4HI6KnAiuWac-_jvKMb1vTFE7_GuPZG1WsNzhyEQVT-BdXIim79SJOyWbwkV91S23isP 

Mozilla Firefox

curl -H "TTL: 60" -X POST https://updates.push.services.mozilla.com/wpush/v1/gAAAAABXt1OmbjxoPG6_YpmEzYZdsYWWE9bj_JQUUbqwuqTB53t_uBKW3bOZNqJ9BG0ZBkEOpPffYHUT3VW-iI7XeBtFydNWnx4KlIGKL75443jdErWhrarb9GAuzwdP_Cen0kOhDG3G 

Es haben auch den Quellcode für die Client- und Server-Seite.

suchen oder auf den Quellcode von Java-lib für WebPush Benachrichtigungen: https://github.com/MartijnDwars/web-push/blob/master/src/main/java/nl/martijndwars/webpush/PushService.java#L88-L115
Der Code ist wirklich einfach und es wird erläutert, wie eine HTTP-Anforderung für FCM/GCM oder Mozilla autopush zu bauen.