TTL功能无法使用谷歌浏览器推送通知

时间:2016-06-16 07:51:32

标签: google-chrome push-notification google-cloud-messaging ttl

我正在使用GCM向Chrome发送推送通知,并面临以下一些问题。我正在使用nodejs库web-push发送推送。

1)我正在设置TTL键,其值为web-push的sendNotifiation值0,并在浏览器离线时发送通知。一分钟后我打开浏览器。我仍然收到通知。我尝试通过curl请求发送以及设置TTL标头,仍然是同样的问题。根据doc,如果TTL标头设置为0并且最终用户离线,则他不应该获得通知。 https://www.npmjs.com/package/web-push

2)有一个时间戳键选项,同时显示通知,这些通知将修改android chrome上的时间戳,同时在桌面chrome上重新排序。即使设置此字段,仍然没有时间在Android chrome上更改。 https://developers.google.com/web/updates/2016/03/notifications?hl=en

提前致谢。

1 个答案:

答案 0 :(得分:0)

这里有几点需要注意:

Chrome历来使用GCM API而不是网络推送协议来发送推送消息。网络推送库旨在使用网络推送协议和GCM的后备 - 因为Chrome在这里做了专有/非标准的事情。

GCM API不使用网络推送协议使用的“TTL”标头,而是GCM API使用“time_to_live”选项(如果设置),我不相信网络推送库使用。

GCM端点最近开始支持网络推送协议,我将提出一个PR来将网络推送库转移到此。