首页 > 解决方案 > 如何使用自签名 OpenSSL 证书在 HTTPS 上测试 PWA?

问题描述

我可以使用 localhost 通过 http 测试服务人员,但我想在移动浏览器上测试。因为它是一个单独的设备,所以我不能使用 localhost,所以我使用 PC 的名称。所以现在我需要使用 https,这会导致我的服务人员出现 SSL 相关错误:

未捕获(承诺)DOMException:无法使用脚本(' https://xxx:5500/app/service_worker.js ')为范围(' https://xxx:5500/app/ ')注册 ServiceWorker :SSL获取脚本时发生证书错误。

我已正确配置 liveServer 以使用自签名证书,并且我已成功启用“edge://flags/#unsafely-treat-insecure-origin-as-secure”,但这还不够。

我还担心如何在移动设备上测试 PWA,因为我认为我无法使用移动设备上的“不安全”功能。我认为这是一个常见的情况,但我没有找到任何答案。

标签: androidopensslprogressive-web-appsself-signed

解决方案


您可以通过 chrome 开发者工具在移动设备上测试您的 PWA:称为远程调试的方法(仅适用于 android)

  1. 在移动设备中打开开发者工具 - 允许 USB 调试

  2. 通过 USB 连接到笔记本电脑或 PC

  3. 去 chrome 开发工具 打开远程设备

  4. 在远程设备中设置端口转发

  5. 在移动 chrome 浏览器中运行本地主机。

有关详细信息,请遵循:https ://developers.google.com/web/tools/chrome-devtools/remote-debugging

这在移动设备中提供了 localhost,因此不需要 https 或 ssl。

我认为这是测试你的 PWA 的最好方法,我个人使用过。


推荐阅读