【发布时间】:2018-11-06 22:40:00
【问题描述】:
我目前正在实施 Firebase 以在 不完全 HTTPS 网络应用上发送 Webpush 通知。由于 webpsuh 正在使用 service worker,我做了一些研究,并在 Google Developers website 上声明:
您只能在通过 HTTPS 提供的页面上注册 Service Worker,因此我们知道浏览器接收到的 Service Worker 在其通过网络的过程中没有被篡改。
这是否意味着可以从 HTTPS 页面注册服务工作者即使网站的其余部分是 HTTP?
提前感谢您的澄清!
编辑
我在 w3c Github 上找到了这个conversation,它说服务工作者应该通过 HTTPS 提供服务,据我所知,只要通过 HTTPS 提供与服务工作者的通信,就可以有其他 HTTP 页面,我说对了吗?
来自debate关于规格,@jyasskin 说:
如果请求 SW 的页面不安全,并且 SW 是 https 但在攻击者控制的域上,那么您根本没有任何收获。是的,整个应用都需要 https。
但这是在服务工作者规范完全设置之前说的,所以不确定这是否是指定的最终方式。
【问题讨论】:
标签: http https service-worker web-push secure-context