前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >【HarmonyOS 开发】虚拟机无法访问本地服务 Couldn‘t connect to server

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

原创
作者头像
Lorin 洛林
发布2025-01-19 21:04:11
发布2025-01-19 21:04:11
1290
举报

问题

  • 在 HarmonyOS 开发过程中,使用127.0.0.1/localhost访问本地服务,我们可能会遇到以下问题:本地服务接口可以正常访问,预览器访问接口也可以正常返回数据,但虚拟机启动后访问接口时,却返回以下错误:
代码语言:json
复制
{
  "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 系统

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

Mac 或 Linux 系统

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

个人简介

👋 你好,我是 Lorin 洛林,一位 Java 后端技术开发者!座右铭:Technology has the power to make the world a better place.

🚀 我对技术的热情是我不断学习和分享的动力。我的博客是一个关于Java生态系统、后端开发和最新技术趋势的地方。

🧠 作为一个 Java 后端技术爱好者,我不仅热衷于探索语言的新特性和技术的深度,还热衷于分享我的见解和最佳实践。我相信知识的分享和社区合作可以帮助我们共同成长。

💡 在我的博客上,你将找到关于Java核心概念、JVM 底层技术、常用框架如Spring和Mybatis 、MySQL等数据库管理、RabbitMQ、Rocketmq等消息中间件、性能优化等内容的深入文章。我也将分享一些编程技巧和解决问题的方法,以帮助你更好地掌握Java编程。

🌐 我鼓励互动和建立社区,因此请留下你的问题、建议或主题请求,让我知道你感兴趣的内容。此外,我将分享最新的互联网和技术资讯,以确保你与技术世界的最新发展保持联系。我期待与你一起在技术之路上前进,一起探讨技术世界的无限可能性。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 问题
  • 问题分析
    • 虚拟机与本地服务器的网络隔离
    • 正确访问宿主机服务的方式
  • 解决方案
    • Windows 系统
    • Mac 或 Linux 系统
  • 个人简介
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档