IOS / Android上的NodeJS

时间:2015-03-19 13:02:01

标签: android ios angularjs node.js server

也许我要问的是愚蠢的,通常我不具备服务器端的经验。

我正在构建一个Angular Web应用程序,在服务器端使用nodeJS。

我需要服务器(Node.exe)将安装在设备本身(IOS / Android)中,nodeJS将打开一个localhost套接字与设备通信。

(根据nodeJS official web site,nodeJS仅支持windows / Mac OS / Linux)

可以这样做吗?

如果没有,我可以在设备中安装另一台服务器吗?

4 个答案:

答案 0 :(得分:1)

是的,您可以使用JXCore(nodejs的一个分支),在此链接中有更多信息  Build Mobile Apps with JavaScript and the Node.js Ecosystem存储库就在这里。

如何编译它是在JXCore - How to Compile

但如果您需要它是nodejs(不是最后一个版本),您可以使用此链接执行您需要的操作Building and running Node.js for Android


更新 27-09-2018

就像有人指出的那样,该项目已不再维护,但我已经在Android手机上使用Termux找到并替代了你可以使用nodejs / gcc / vim / etc和更多工具做很多事情

此链接显示如何为nodejs执行此操作(我已在手机上测试过): Building a Node.js application on Android - Part 1: Termux, Vim and Node.js

首先从Playstore安装termux。

答案 1 :(得分:0)

我不明白在客户端使用服务器工具的重点。

如果您的应用程序应该使用离线模式,您应该将所有数据和其他数据放在客户端应用程序中(使用cordova)。

如果您的应用程序使用在线模式,则需要服务器端来提供数据。在这里,您可以设置nodeJS API,为您的应用程序提供要打印内容的路径。

我不确定我是否给了您想要的答案,那么可以解释一下在客户端设备上使用服务器工具的重点吗?

答案 2 :(得分:0)

您要实现的目标,将您的设备变为服务器。

服务器端语言意味着留在服务器上。 我真的不明白为什么你需要在设备上打开一个localhost套接字与自己进行通信。它是否用于离线测试?您可以这样做,因为您有一台计算机和一台设备,并且两者都连接到同一网络。 我相信一个非常好的开始是首先理解客户端 - 服务器架构的概念。

但简而言之,使用您选择的技术实现Client-Server应用程序的正确方法是: 服务器应该为客户端提供其请求的答案。 因此,在Node.js(服务器端)中,编写您想要与数据库通信的任何内容(创建,读取,更新,删除),执行自定义处理等... 并返回一个结构化的答案。

客户端期待他的请求的答案,并且应该在代码中处理答案。因此,用AngularJS编写的程序(这是您的客户端语言)将安装在设备上。

客户端必须知道服务器答案的格式。是纯文本吗? XML? JSON? ...

答案 3 :(得分:0)

所以你的意思是你希望有一个应用可以通过http运行一些服务吗?

不确定iOS是否允许应用程序使用JS虚拟机执行代码...

和Android 在Github上搜索,我发现如何为Android构建NodeJS https://github.com/dna2github/dna2oslab/tree/master/android/build

以下是在https://github.com/dna2github/dna2mtgol/tree/master/fileShare

上在Android上运行已编译的Nginx二进制文件的示例

您可以修改一下以将Nginx替换为NodeJS。运行Nginx的代码不是很好;也许你可以试试Android服务让服务器在Android设备的后端运行。

希望这是你想要的。