2017-05-24 67 views
1

我有一个网页发送消息到服务工作者脚本。为了能够做到这一点,网页需要成为服务器工作者脚本的客户端。 有不同的方法来做到这一点,但据我所知,所有的方法导致客户端的网页缓存在服务工作者。如何不缓存服务器工作者客户端

我想知道是否有可能网页可以发送消息到服务器工作人员脚本,而不必将其缓存到服务器工作人员?

回答

2

当然 - 并不要求服务工作者缓存任何内容,甚至不需要服务工作人员实施处理程序并拦截网络请求。你可以创建只具有message处理程序,从它控制的网页侦听传入消息的服务人员:

// service-worker.js: 
self.addEventListener('message', event => { 
    // Do something with event.data 
}); 

但是,如果你仅仅使用一个服务人员来监听消息,而不是拦截网络请求,我想知道像SharedWorker这样的替代品还是仅仅是简单的香草Worker会是更好的选择吗?