如何测试 api 从 flutter app 到 localhost 服务的调用?

How to test api calls from flutter app to localhost service?

我正在尝试了解如何测试从我的 flutter 应用程序(在模拟器中是 运行)到我的后端服务的 http 调用,这是在我的电脑上进行调试的 运行 https://localhost:8080.

我知道直接从 flutter 与 https://localhost:8080 通话是行不通的,因为这意味着 "emulator's localhost",所以我正在与我的电脑本地 ip 通话,但我得到 CERTIFICATE_VERIFY_FAILED因为当然 https://192.168.1.123:8080 没有签名证书。

处理这种情况的正确方法是什么?

您需要使用主机的本地主机,而不是模拟器的本地主机。为此,您需要使用 10.0.2.2,然后使用您的端口号,因此在您的情况下,请对 https://10.0.2.2:8080 进行 http 调用。在内部 Android 将对 10.0.2.2 的调用重新路由到 127.0.0.1,这是您开发机器上的本地主机 IP。

How do you connect localhost in the Android emulator?

更多信息:https://developer.android.com/studio/run/emulator-networking.html