Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js ServiceWorker和推送通知负载_Node.js_Google Cloud Messaging_Ecmascript 6_Service Worker_Chrome Gcm - Fatal编程技术网

Node.js ServiceWorker和推送通知负载

Node.js ServiceWorker和推送通知负载,node.js,google-cloud-messaging,ecmascript-6,service-worker,chrome-gcm,Node.js,Google Cloud Messaging,Ecmascript 6,Service Worker,Chrome Gcm,社区: ServiceWorker在缓存管理方面是一项非常先进的技术,但我有一些与其他操作相关的问题,例如: 推送通知:我进行了GCM集成(Google Clud消息)和NodeJS,接下来的问题是,当GCM将信息发送到客户端(CHOME)时,GCM生成的消息的有效负载无法在ServiceWorker Listener的通知中访问,这对于决策非常有用。 知道什么时候会启用通知中的数据负载吗 注册:由于ES6非常成熟,最好用其他方式注册ServiceWorker,例如: import sw fro

社区:

ServiceWorker在缓存管理方面是一项非常先进的技术,但我有一些与其他操作相关的问题,例如:

推送通知:我进行了GCM集成(Google Clud消息)和NodeJS,接下来的问题是,当GCM将信息发送到客户端(CHOME)时,GCM生成的消息的有效负载无法在ServiceWorker Listener的通知中访问,这对于决策非常有用。 知道什么时候会启用通知中的数据负载吗

注册:由于ES6非常成熟,最好用其他方式注册ServiceWorker,例如:

import sw from './sw.js'

navigator.serviceWorker.register(sw, {scope: '/'}).then(function (registration) {
 // Registration was successful
 console.log('ServiceWorker registration successful with scope: ', registration.scope);
}).catch(function (err) {
 // registration failed :(
 console.log('ServiceWorker registration failed: ', err);
});
这是可能的还是有意义的

谢谢

  • “”错误跟踪在通知中公开有效负载的进度。该缺陷是特定于Chrome的,但其他浏览器供应商可能会采用相同的方法
  • service worker升级流程与存在一个表示service worker代码的特定JavaScript文件的想法密切相关,然后可以定期逐字节检查该文件,以查看是否有任何更新。如果它是一个已注册并从文件中分离的内存中JavaScript对象,则升级流将无法按指定方式工作。我认为您不会看到您提议的更改添加到规范中

  • 您的注册示例代码实际上是不可能的,因为您应该传递给
    .register
    的是一个全新的文件,要在全新的JS环境中加载。您发布的代码将在页面的JS环境中执行service worker,然后尝试传递一些引用。感谢您在第1点上回答@Jeff Posnick,没什么好说的,答案非常清楚。。。关于第2点,如果能够灵活地在另一个线程上运行脚本,例如当前线程的导入服务(类)实例,那就太好了。所有这些都是为了更好地利用SS6的进出口系统。