2017-09-05 25 views
0

我想我的服务人员采取以下办法:服务工作者:从网络获取高速缓存未命中后,只有WiFi连接

  • 咨询缓存
  • 如果缓存命中,返回缓存的资源
  • 否则,如果无线网络,从网络获取资源
  • 否则返回错误

我知道navigator.onLine,但是这并不(正如我所理解的那样)区分连接类型,并且仅仅表示客户端在线(通过任何方式)。

服务人员有这样做的方法吗?即使通过一些迂回的手段?对于

回答

0

好吧,所以我发现navigator.connection,这似乎已经存在了一段时间,但与零星的支持。的确,它只有supported from desktop Chrome 61,所以我发布的Chrome浏览器不支持它。另一方面,它显然已经在Android Chrome上支持了一段时间,这是我需要的环境。请参阅here以获取有用的代码段和现场示例。

因此,要检查WiFi连接,将检查navigator.connection.type属性是否设置为“wifi”。