我正在尝试向用户发送推送通知。当通知到达时立即单击通知时,一切似乎都做得很好。 VIsitor被重定向到正确的URL,但是当我等待大约20分钟时问题开始出现。然后,访问者被重定向到UNDEFINED URL。意味着推送通知不再记住该URL。
这是我的服务人员:
'use strict';
self.addEventListener('push', function(event) {
console.log('[Service Worker] Push Received.');
console.log(`[Service Worker] Push had this data: `);
console.log(JSON.parse(event.data.text()));//
const notificationObject = JSON.parse(event.data.text());//
const title = notificationObject.title;//modified from tutorial to make it more dynamic
const options = {
body: notificationObject.msg,
icon: notificationObject.icon,
badge: notificationObject.badge,
};
self.notificationURL = notificationObject.data;
event.waitUntil(self.registration.showNotification(title, options));
});
self.addEventListener('notificationclick', function(event) {
console.log('[Service Worker] Notification click Received.');
//console.log(self.notificationURL);
event.notification.close();
event.waitUntil(
clients.openWindow(self.notificationURL)
);
});
任何人都知道为什么用户在20分钟后会重定向到UNDEFINED页面,但是在前20分钟内一切正常吗?
推送服务可以某种方式忘记发送的数据吗?这在台式机和Android上都在发生。