2016-06-22 3 views
3

私はGCMプッシュ通知APIを試しています。これまでのところ正常に動作しますが、追加データを投稿する方法がわかりません。GCMプッシュ通知によるデータの投稿

私はこのページの手順に従っ:https://developers.google.com/web/fundamentals/getting-started/push-notifications/step-07

だから私はこのようなcurl要求書いてしまった:

curl --header "Authorization: key=myKey" --header "Content-Type: application/json" https://android.googleapis.com/gcm/send -d "{\"registration_ids\":[myRegistrationId], \"additionalData\": {\"user_id\":\"1\"}}"

をそして、私のsw.js(私のサービスワーカー)

self.addEventListener('push', function(event) { 
    console.log('Push message', event); 
    var title = 'test a'; 
    event.waitUntil(
     self.registration.showNotification(title, { 
      body: 'The Message', 
      icon: '/assets/img/logo.png', 
      tag: 'my-tag' 
     })); 
}); 

この前夜にadditionalDataを読み取る方法はありますかNT?それともこのようにするつもりはない?

読んでいただきありがとうございます!

+0

プッシュ通知に追加データを掲載することができますが、データサイズの制限があります。 –

+0

しかし、私はそれを実際に投稿してプッシュイベントでどのように読むのですか? –

+0

あなたが使用している言語のサーバー側 –

答えて

2

https://github.com/web-push-libsのライブラリの1つを使用することをお勧めします。プッシュペイロードに関連する複雑さを隠し、標準のウェブプッシュプロトコル(現時点ではFirefoxでサポートされており、すぐにChromeでデフォルトで使用される)と独自のGCMプロトコル(Chromeでは遅かれ早かれ使用されなくなります)。

現在、Node.js、PHP、Python、Javaのライブラリがあります。

+0

Go:https://github.com/GoogleChrome/push-encryption-go(ごく初期段階) – RockoDev

0

これに続いてstepと変更されませんでした。

私はcURLのPOSTを試してみました:

curl --request POST --url localhost:8080/api/send-push-msg --header 'content-type: application/json' --data '{"subscription":{"endpoint":"https://fcm.googleapis.com/fcm/send/fKr7EsvRiyA:APA.....[Changes with your data]","keys":{"p256dh":"Your Key","auth":"Your Auth"}},"data":"Your Messages Here","applicationKeys":{"public":"Your Public Key Server","private":"Private Key Server"}}' 

それは私のためによく働きました。 :)

関連する問題