如何将 Rails 服务器连接到 Android 模拟器 (Genymotion)

How to connect Rails server to Android emulator (Genymotion)

我目前的设置是 Rails 在后端,React Native 在前端。根据 other questions,我知道我需要使用地址 10.0.3.2 从 Genymotion 中访问本地主机(10.0.2.2 如果你使用默认的 Android 模拟器)。

如何允许我的 Rails 服务器的传入连接?

为此,请按照下列步骤操作:

  1. 默认情况下,您的 Rails 服务器不接受本地计算机以外的连接(请记住,在网络方面,模拟器独立于您的计算机)。所以你需要将你的服务器绑定到 0.0.0.0 以接受来自任何地方的连接:

rails s --binding=0.0.0.0

  1. 要测试之前的设置是否有效,请转到模拟器中的浏览器并输入 10.0.3.2:3000。您应该会看到与在计算机的浏览器中键入 localhost:3000 等效的效果。

很简单,您可以按照以下步骤进行操作:

  • 首先,您键入此命令以显示您的 IP 地址:ifconfig
  • 其次,在您的控制台中,键入此命令:rails s -b your_ip_address
    • 例如:rails s -b 192.168.1.102
  • 最后,在 android 上打开浏览器并输入:192.168.1.102:3000

你可以看看这个rails官方就明白了。

rails host