我想使用服務人員與Firebase在Chrome上實現推送通知。我在我的web應用程序中有一個清單文件和一個sw.js文件。我已經在Firebase中創建了一個項目,並且已經測試了註冊和發送通知。這一切都工作正常,但收到通知時數據爲空。我不明白爲什麼,也沒有任何有用的資源(據我所知!)。 這裏是我的服務人員檔案:如何使用FCM的服務人員推送通知
self.addEventListener('push', function(event) {
console.log('Push message', event);
var title = 'Push message';
event.waitUntil(
self.registration.showNotification(title, {
body: 'The Message',
icon: 'images/logo.svg',
tag: 'my-tag'
}));
});
這是我main.js文件:
if ('serviceWorker' in navigator) {
navigator.serviceWorker.register('/sw.js').then(function(registration) {
// Registration was successful
console.log('ServiceWorker registration successful with scope: ', registration.scope);
registration.pushManager.subscribe({
userVisibleOnly: true
}).then(function(sub) {
console.log('endpoint:', sub.endpoint);
}).catch(function(e) {
});
}).catch(function(err) {
// registration failed :(
console.log('ServiceWorker registration failed: ', err);
});
}
manifest.json的:
{
"name": "APPNAME",
"gcm_sender_id": "SENDERID"
}
捲曲請求:
curl --header "Authorization: key=APIKEY" -application/json" https://fcm.googleapis.com/fcm/send -d "{\"registration_ids\":[\"REGISTRATIONID\"],\"notification\":{\"title\":\"test\",\"body\":\"testing\"},\"data\":{\"title\":\"erse\"}}"
我沒有收到我在請求中發送的任何數據。這是用firebase做的其他方式嗎? 在此先感謝。
[使用GCM推送通知發佈數據可能重複](http://stackoverflow.com/questions/37966954/posting-data-with-gcm-push-notification) – Marco
我也有這個問題 – ihsansat
目前黑客入侵同樣的問題。不要認爲firebase目前支持我們通過serviceWorkers獲得的webPush。 – pascalwhoop