首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AbortError:注册ServiceWorker失败:无法启动ServiceWorker

AbortError:注册ServiceWorker失败:无法启动ServiceWorker
EN

Stack Overflow用户
提问于 2017-01-03 01:19:36
回答 1查看 1.8K关注 0票数 1

我正在尝试在Chrome中测试推送通知功能。我在这里克隆了谷歌提供的示例Chrome推送通知web应用程序:https://github.com/GoogleChrome/samples/tree/gh-pages/push-messaging-and-notifications

当我在本地主机上使用Web server for Chrome extension HTTP服务器托管web应用程序时,代码工作正常。当我想在移动设备上测试web-app时,我不能使用Chrome扩展的Web服务器,因为它是HTTP服务器,而不是localhost,服务人员只在HTTPS上工作。因此,我使用自签名证书创建了一个基于python的HTTPS服务器,并在那里托管了web应用程序。

现在,我在注册服务工作者时获得了AbortError: Failed to register a ServiceWorker: ServiceWorker cannot be started,如下所示:

代码语言:javascript
复制
    navigator.serviceWorker.register('./service-worker.js')

service-worker.js与html文件和js文件在同一个目录中,我就是在这个目录中调用这个方法的。

关于服务工作者的文档并不多。此外,这个错误太模糊了,无法弄清楚任何事情。请帮我找出这个错误的根本原因。

EN

回答 1

Stack Overflow用户

发布于 2017-01-03 15:23:05

我找到了解决方案。服务工作者仅在安全的HTTPS网络上工作。我创建的Python HTTPS服务器是使用自签名证书签名的,因此不安全。我使用ngrok创建了一个到localhost的安全https隧道,然后它就工作了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41430841

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档