源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

iPhone手机上搭建nodejs服务器步骤方法

  • 时间:2022-09-26 09:52 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:iPhone手机上搭建nodejs服务器步骤方法
[b]一、为在ios上面运行,编译jxcore[/b]
[u]复制代码[/u] 代码如下:
$ mkdir ~/jxcore  $ cd ~/jxcore  $ git clone https://github.com/jxcore/jxcore.git 
[u]复制代码[/u] 代码如下:
$ cd ~/jxcore/jxcore  $ ./build_scripts/ios-compile.sh 
如果出现import which的module not found问题, 那就通过下面语句安装python的which
[u]复制代码[/u] 代码如下:
sudo easy_install tools/which-1.1.0-py2.7.egg 
如果出现别的问题,可以参看jxcore编译ios的前提条件,采取相应措施。 https://github.com/jxcore/jxcore/blob/master/doc/HOW_TO_COMPILE.md
[u]复制代码[/u] 代码如下:
* GCC 4.2 or newer (for SpiderMonkey builds 4.7+)  * Python 2.6 or 2.7  * GNU Make 3.81 or newer  * libexecinfo (FreeBSD and OpenBSD only)  * for SpiderMonkey : 'which' python module (sudo easy_install tools/which-1.1.0-py2.7.egg) 
[b]二、 在mac上安装jxcore[/b]
[u]复制代码[/u] 代码如下:
$ ./configure  $ sudo make install 
[b]三、 创建cordova程序,如果没有安装cordova,可以自行安装。[/b]
[u]复制代码[/u] 代码如下:
$ cordova create hello com.example.hello HelloWorld  $ cd hello 
[b]四、下载安装jxcore-cordova插件[/b]
[u]复制代码[/u] 代码如下:
$ git clone https://github.com/jxcore/jxcore-cordova 
利用jxcore-cordova的模板index.html
[u]复制代码[/u] 代码如下:
$ cp ./jxcore-cordova/sample/www/index.html ./www/ 
拷贝在第一步为在ios上运行而编译的jxcore包
[u]复制代码[/u] 代码如下:
$ cp -r ~/jxcore/jxcore/out_ios/ios/bin jxcore-cordova/io.jxcore.node/ 
[b]五、添加cordova的ios platform[/b]
[u]复制代码[/u] 代码如下:
$ cordova platforms add ios  $ cordova plugin add jxcore-cordova/io.jxcore.node/  $ cordova build  $ cordova run ios 
如果build出错,"C does not support default arguments" 只需将默认值去掉一般就会解决问题。 将
[u]复制代码[/u] 代码如下:
JXCORE_EXTERN(void)  JX_SetString(JXValue *value, const char *val, const int32_t length = 0); 
修改为
[u]复制代码[/u] 代码如下:
JXCORE_EXTERN(void)  JX_SetString(JXValue *value, const char *val, const int32_t length); 
重新build即可 [b]六、此时应该可以看到cordova的运行界面。[/b] [b]七、在Resources/jxcore_app/app.js添加nodejs server[/b] 在app.js的最后面添加如下代码
[u]复制代码[/u] 代码如下:
function getIP() {          var os = require('os');          var nets = os.networkInterfaces();          console.log(nets);          for ( var a in nets) {                  var ifaces = nets[a];                  for ( var o in ifaces) {                          if (ifaces[o].family == "IPv4" && !ifaces[o].internal) { return ifaces[o].address; }                  }          }          return null;  }  var ip = getIP();  if (!ip) {          console.error("You should connect to a network!");          return;  }    var http = require('http');  http.createServer(function(req, res) {          res.writeHead(200, {                  'Content-Type': 'text/plain'          });          var cur_client = "";          if(req.connection && req.connection.remoteAddress) {                  console.log(req.connection.remoteAddress);                  cur_client = req.connection.remoteAddress;          } else if(req.headers) {                  console.log("request header X-Forwarded-For");                  console.log(req.headers['X-Forwarded-For']);                  cur_client = req.headers['X-Forwarded-For'];          }          cordova('log').call('client( ' + cur_client + ' ) come');          res.end('Hello '+ cur_client +', I am server on iphone app('+ ip +'). '+Date.now()+'\n');  }).listen(1337, ip);  console.log('Server running at http://' + ip + ':1337/'); 
运行程序,即可在xcode的log信息里面看到iphone的ip,然后通过网页就可以浏览网页。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部