【问题标题】:Remotely debugging service worker on chrome android with self signed certificate使用自签名证书在 chrome android 上远程调试 service worker
【发布时间】:2017-03-12 22:21:01
【问题描述】:

我试图调试从我的开发机器提供的服务工作者,并在智能手机上的 chrome android 中运行。

我正在使用 USB 连接并从我的开发机器进行远程调试。服务人员仅在 https 中工作,我可以忍受,chrome 和 firefox 都拒绝注册 SW。

然后我在我的开发机器上使用了自签名证书,这显然不受移动浏览器的信任。他们警告说证书不好,但可以选择继续使用该证书。我点击是,虽然从那时起 Firefox 能够注册 SW chrome,但仍然抱怨证书不好并拒绝注册 SW。

我尝试将自签名 CA 包含在智能手机信任列表中,但没有找到方法。最后,我不得不从带有常规证书的生产服务器提供应用程序,我一点也不喜欢,但我不能在这个问题上浪费一整天。

如何远程调试从 LAN 中的开发机器提供的 android 上的 service worker? localhost 不能使用,因为它们是 2 个独立的设备。我找到了一个设置来忽略 chrome 但桌面版本的 https 警告,我使用的是 android chrome,如何禁用这个无聊的阻塞错误?

谢谢

【问题讨论】:

标签: android google-chrome certificate remote-debugging service-worker


【解决方案1】:

我也面临同样的问题。我已经为我个人使用的推送通知编写了 service worker。当我在 localhost 上运行它时,它在我的桌面浏览器上运行良好。但我想在移动设备上收到通知,所以我尝试了许多选项来完成相同的操作,在移动设备上将远程 IP 作为本地主机运行、USB 调试、添加 ssl 证书和许多其他黑客,但对我没有任何帮助。但随后适用于 Android 手机的“Kick Web Server”应用程序救了我,只需几分钟即可使用 localhost 在移动浏览器上运行我的应用程序并注册服务工作者。所以不再需要 SSL 和 USB 调试。

步骤

  • 转到 playstore 并搜索“Kick Web Server”应用(注意:搜索结果后将显示“Web Server PHPMyAdmin/MySql”with icon like this)。
  • 不用担心您不需要 PHP 或 Mysql 来使用此应用程序,您可以使用任何技术堆栈轻松运行您的网站。
  • 打开应用程序会询问您访问存储的权限,您必须授予它权限。
  • 返回应用程序并单击停止按钮以启动 Web 服务器。
  • 它将在您的移动存储中创建名为 htdocs 的目录/文件夹。
  • 从 htdocs 目录中删除现有内容(两个现有文件)。
  • 在 htdocs 目录中复制带有 index.html 的构建内容。
  • 在您的移动浏览器中访问http://localhost:8080,您将看到您的网站已启动并运行,并已注册服务工作者。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-26
    • 2020-10-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多