我在 Linux 虚拟机上设置了 Echoprint 本地网络服务器(使用 tokyotyrant、python、solr)。
我可以通过浏览器访问它,或者在虚拟机中使用 http//localhost:8080 和在非虚拟机中 curl 访问它(找不到更好的说法)我也使用虚拟机上的 IP 与8080 端口。
但是,当我尝试在同一个 wifi 上通过我的 android 访问它时,出现连接被拒绝错误。
我在 Linux 虚拟机上设置了 Echoprint 本地网络服务器(使用 tokyotyrant、python、solr)。
我可以通过浏览器访问它,或者在虚拟机中使用 http//localhost:8080 和在非虚拟机中 curl 访问它(找不到更好的说法)我也使用虚拟机上的 IP 与8080 端口。
但是,当我尝试在同一个 wifi 上通过我的 android 访问它时,出现连接被拒绝错误。
如果您从 Android 模拟器中引用系统上的本地主机,那么您必须使用 10.0.2.2:8080。因为 Android 模拟器在虚拟机(QEMU)中运行,所以这里 127.0.0.1 或 localhost 将是模拟器自己的环回地址。
参考:模拟器网络
服务器是绑定到 localhost 还是 0.0.0.0?
由于桥接,也许您的主机也将该 ip 解析为某种 localhost。
“localhost”和“127.0.0.1”都只是本地环回接口:它们只在同一台机器上有意义。在您的 Android 设备上,假设它与您的机器在同一个 wifi 网络上,您需要使用主机的实际 IP 地址:您可以从该机器的网络设置或路由器的 Web 界面中找到它.
如果有人有同样的问题,我解决了。连接必须通过电缆,并且在 VMware Player 设置中必须桥接网络连接,您还必须单击“配置适配器”并取消选中“VirtualBox Host-Only Ethernet Adapter”。