java.net.UnknownHostException:服务器的主机名无效:本地

新手上路,请多包涵

我应该采取哪些步骤来解决错误:

 java.net.UnknownHostException: Invalid hostname for server: local

我在 Android 模拟器上添加了新的虚拟主机名,但结果返回

 java.net.UnknownHostException virtualhostname at
  java.net.InetAddress.lookUpHostByName(InetAddress.java:506)

当我在我的 PC 上键入我的虚拟主机 URL 时,它会显示。再说一次,当我在 Emulator 上运行并检查 Logcat 时,如果 200、202 或错误代码号,我无法读取或检查 HTTP 状态。它只是返回到 UnknownHostException

原文由 Ashish Agarwal 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.4k
2 个回答

真正的例外是没有名称为“本地”的已知服务器。我的猜测是您正在尝试连接到本地计算机。尝试使用主机名 "localhost" 代替,或者可能是 127.0.0.1::1 (最后一个是 IPv6)。

javadocs

抛出表示无法确定主机的 IP 地址。

127.0.0.1::1"localhost" 应该始终是环回接口,所以如果这不起作用,我会感到非常惊讶。

如果您的网络上确实有一个名为“本地”的服务器 - 检查您的 DNS 设置或将其添加到您的主机文件中。

原文由 André Laszlo 发布,翻译遵循 CC BY-SA 3.0 许可协议

我在我的 mac 上遇到了同样的问题。当我从终端 ping 我的 $HOSTNAME 并返回 ping: cannot resolve myHostName: Unknown host 时,我发现了这个问题。

解决:

  1. 在您的终端上执行 echo $HOSTNAME

  2. 无论它显示什么主机名(比如 myHostName ),尝试 ping 它: ping myHostName 。如果它返回 ping: cannot resolve myHostName: Unknown host 然后在你的 /etc/hosts 文件中添加一个条目。

  3. 对于该编辑 /etc/hosts 文件并添加以下内容:

127.0.0.1 myHostName

原文由 Shobhit Puri 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题