2016-07-24 6 views
0

サーバーサイドコードです:(作業serviceworker中)ブラウザ:Googleクラウドメッセージング/ノード-GCM - データは常にnull

var message = new gcm.Message({ 
    collapseKey: "demo", 
    delayWhileIdle: true, 
    timeToLive: 3, 
    data: { 
     test: 'value' 
    } 
}); 

var sender = new gcm.Sender(config.gcmKey); 

var tokens = []; 

... (to add tokens) ... 

sender.send(message, tokens, 3, function (err, res) { ... } 

クライアント側コード:

self.addEventListener('push', function(event) { 
    console.log('Push message', event); 
    var title = 'Push message'; 
    event.waitUntil(
     self.registration.showNotification(title, { 
      body: 'Test', 
      icon: 'img/icon.png', 
     })); 
}); 

(すべてのReadmeファイルからコピーされ、チュートリアル、デモ)

通知サーバーサイドを送信すると、期待どおりにエラーなしで画面に表示されます。ただし、console.log('Push message', event);data: nullでイベントオブジェクトを出力します。サーバーからtest: 'value'のキーと値のペアを取得するにはどうすればよいですか?これは最新のノード-gcmとChrome 52を使用しています。

答えて

0

ウェブプッシュ通知のペイロードは、Androidで動作するのと同じように機能しません。暗号化して別の方法で送信する必要があります。

Node.jsにはweb-push libraryを使用できます。古いChromeバージョン、Firefox用Web Push、新しいChromeバージョン用のGCMをサポートしています。

関連する問題