写点什么

【HarmonyOS 开发】虚拟机无法访问本地服务 Couldn‘t connect to server

作者:Geek_4a16a4
  • 2025-05-19
    广东
  • 本文字数:459 字

    阅读完需:约 2 分钟

问题

  • 在 HarmonyOS 开发过程中,使用127.0.0.1/localhost访问本地服务,我们可能会遇到以下问题:本地服务接口可以正常访问,预览器访问接口也可以正常返回数据,但虚拟机启动后访问接口时,却返回以下错误:


{  "code": 2300007,  "message": "Couldn't connect to server"}
复制代码

问题分析

虚拟机与本地服务器的网络隔离

  • 虚拟机实际上是一台独立的虚拟机器,其运行环境与宿主机(本地服务器所在的计算机)是隔离的。由于网络隔离,虚拟机无法直接通过 localhost 或 127.0.0.1 访问宿主机的服务。

  • 这是因为:localhost 或 127.0.0.1 指向当前机器:对于虚拟机来说,localhost 指向的是虚拟机本身,而不是宿主机。

  • 因此,虚拟机访问 localhost 时,无法找到本地服务器。

正确访问宿主机服务的方式

  • 要让虚拟机访问本地服务器,需要通过宿主机在局域网内的私有 IP 地址,而不是通过 localhost 或 127.0.0.1。

解决方案

  • 查询主机在局域网内的私有 IP

Windows 系统

1、打开命令提示符(快捷键:Win + R,输入 cmd)。2、输入以下命令:ipconfig
复制代码


Mac 或 Linux 系统

1、打开终端。2、输入以下命令:ifconfig
复制代码


用户头像

Geek_4a16a4

关注

还未添加个人签名 2025-05-13 加入

还未添加个人简介

评论

发布
暂无评论
【HarmonyOS 开发】虚拟机无法访问本地服务 Couldn‘t connect to server_鸿蒙_Geek_4a16a4_InfoQ写作社区