从外部访问android localhost

我已经find了一些方法来运行我的android设备上的node.js服务器。 我发现了一些很好的文章描述它: https : //medium.freecodecamp.com/building-a-node-js-application-on-android-part-1-termux-vim-and-node-js-dfa90c28958f#.xrh3v0du1 。 我遵循教程,在我的设备上安装了linux vm,并安装了node.js. 我已经成功运行我的node.js脚本,并从Android浏览器访问它。 但我无法find任何方式来打开此网页以外的我的Android设备的IP地址。

如果您的TelCo允许,您可以访问您的本地主机android运行您的节点,按照以下步骤。 注意:这只有当您的手机使用您的手机数据计划(2-3-4-5 … G数据)连接时才有效,而不是在使用Wi-Fi连接时。 要清楚的是:在您的手机上,您的应用仅通过以下方法提供内容,如果此手机使用Wi-Fi数据。

1 – 在dynamicDNS提供商网站build立一个帐户(好的计划总是支付)。 在那里你会configuration一个像http://muhlinin.mydyndns.com这样的URL,它将指向一个dynamic的IP号码;

2 – 将相应的dynamicDNS应用程序安装到您的手机,这个应用程序将您的当前IP号码转发到您的dynamicDNS帐户,确保每一个请求http://muhlinin.mydyndns.com总是会发现你的手机回应请求,无论你的手机在请求时间有什么IP;

3 – 在你的android上,运行(例如)Termux和Node,让你的.js服务器脚本监听一个非默认端口(默认80,可能被TelCoclosures),例如8000,dynamic你得到了以下1和2显示的url。 像这样的东西: http : //muhlinin.mydyndns.com : 8000

当然,如果您的手机关机,或者相应的dyn dns应用程序closures或未启动,或者您的Node服务器closures或未启动,则每次调用http://muhlinin.mydyndns.com:8000都将导致错误。 所以,为了让所有的工作都能正常工作,必须先完成前面3个步骤, 在移动服务器上打开并启动:

1 – dyn dns应用程序;

2 – Node.js运行时;

3 – 您的serverscript.js(您将通过在Termux上执行一个简单的“节点serverscript.js”开始。

尝试在terminal中运行ifconfig ,并查看inet addr:字段的wlan0条目以在您的wifi上查找您的ip。