2016-03-22 67 views
0

我们正在试图找出如何做到这一点:从iOS模拟器访问本地node.js服务器?

  1. 我们必须在Node.js的服务器,本地托管在我们的计算机上,并与故宫开始初始化产生了一些服务。从这个服务器使用数据

  2. 离子应用...

使用$离子服务,应用程序可以,因为他们在同一环境中运行明显访问Node.js的服务器...不幸的是,当用iOS模拟器($ ionic emulate ios)模拟它时,服务器无法访问。

有什么办法可以保持本地主机上下文可用于iOS模拟器?

回答

0

一种方法是抓住您的本地网络 IP地址(可能由DHCP分配),并在仿真时将该应用程序的端点设置为该IP。

您位于同一网络上,但不在同一个“localhost”上下文中。

这可能看起来像:

angular.module('MyIonicApp') 
    .constant('apiEndpoint', function() { 
     var env = process.env.SENTRY_MODE; 
     var dbURI = process.env.DB_URI; 

     /** Live API **/ 
     if (env === 'prod') 
      { return dbURI; } 
     /** Local development **/ 
     else { return 'localhost'; } 
    }); 

如果你没有配置环境变量,另一种选择是使用ionic.Platform.platform()实用程序来帮助确定您的上下文是什么。 (Docs

这是一个临时解决方案,但应该启动并运行测试。

要在Mac OSX上找到您的本地IP地址,您可以打开您的系统首选项>网络,然后单击您的首选连接(如Wi-Fi),IP地址将显示在“Turn Wi-Fi关”

一种简单的方法来确定您的IP窗户是打开命令提示符(在开始搜索CMD),并输入ipconfig,让你的IPv4地址

相关问题