【问题标题】:Http request to local machine using host name not working in android Device使用主机名对本地机器的 Http 请求在 android 设备中不起作用
【发布时间】:2015-04-24 12:36:17
【问题描述】:

当我尝试通过指向 LAN 中的机器来调用我的 Web 服务时遇到问题。

经过一番搜索,我发现我不能使用以下模式

  1. http://localhost/..
  2. http://localhost:port/..
  3. http://127.0.0.1:port/..

然后我尝试通过像这样指定我的机器名称来访问它。

  1. http://machine_name:port/....
  2. http://machine_name/....

它仍然无法在我的 Android 设备上运行。谁能解释我为什么可以这样做?我能做到这一点吗?

谁能把这个想法说清楚?因为我想知道从同一局域网中的其他机器和从安卓手机访问本地服务器机器的区别。 :)

【问题讨论】:

  • 试试 10.0.2.2 这应该可以工作(仅适用于模拟器)
  • 谁能说清楚?因为我想知道从其他机器和安卓手机访问本地服务器机器的区别。 :)
  • @Paresh Mayani 如何从安卓手机访问机器?

标签: android http dns localhost server


【解决方案1】:

如果您在模拟器中进行测试,则必须使用

10.0.2.2

如果您使用的是连接在同一局域网中的电话,那么您必须使用服务器机器的 IP 地址。

【讨论】:

    【解决方案2】:

    转到命令提示符,键入 ipconfig 然后记下您的 ipv4 地址。 你会发现类似 192.168.xxx.xxx 把那个地址作为url

    【讨论】:

    • 您假设 OP 在 Windows 上,并且他想指向它的设备 IP...
    【解决方案3】:

    Localhost 和 127.0.0.1 指向您请求的当前机器。因此,当连接到您的 Android 上的 localhost 或 127.0.0.1 时,请求会发送到您的 android 并且永远不会离开,因为它要求与自己建立连接(很可能没有设置)

    因此,要从远程设备连接到您的开发机器,最简单的方法是找到您的开发机器的 IP 地址,并尝试将其用作您的 Android 或本地网络上的任何其他远程设备上的地址.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-10-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-04
      • 2012-06-01
      • 2017-08-12
      相关资源
      最近更新 更多