如何使用 https 地址而不是 http 在 web 上运行 Flutter 应用程序:

Emi*_*Adz 7 https dart android-studio flutter flutter-web

我正在尝试移植我用 Flutter 为 Android 和 iOS 制作的应用程序,并在网络上运行它。由于我使用 Google 和 Facebook 登录框架,因此即使原始 url 是 localhost,也需要使用“https”地址。我正在使用 Web 服务器运行选项,该选项在 Android Studio 内的 Web 服务器的构建中运行该应用程序。

我正在使用命令行中的以下命令运行 Web 应用程序:

flutter run -d web-server --web-hostname=`hostname` --web-port=8080 --profile -v
Run Code Online (Sandbox Code Playgroud)

并使用我在 Google API 控制台中指定的端口,但由于我没有使用“https”并且连接不安全,我仍然无法在其中一个平台中进行身份验证。

有没有人遇到过这个问题并知道如何解决?我将不胜感激您能在这方面提供的任何帮助。

Oma*_*att 0

您可以用来mkcert创建证书并使用设备和浏览器本地信任的证书颁发机构 (CA) 对其进行签名。

按照本指南安装 mkcert。mkcert -install在终端上运行,使用 mkcert 创建新的本地证书颁发机构。然后运行mkcert localhost​​- 这使得所有本地主机地址都可信。此处演示了其他示例。

至于将此功能直接融入到 Flutter 插件中,您可以跟踪GitHub上的活动功能请求。

  • 你能解释一下怎么做吗?我已经为本地主机创建了证书,现在我该怎么办?我尝试手动输入 `https://localhost:8080` 但这不起作用 (2认同)