iPhone手機上搭建nodejs服務(wù)器步驟方法
一、為在ios上面運行,編譯jxcore
$ mkdir ~/jxcore
$ cd ~/jxcore
$ git clone https://github.com/jxcore/jxcore.git
$ cd ~/jxcore/jxcore
$ ./build_scripts/ios-compile.sh
如果出現(xiàn)import which的module not found問題, 那就通過下面語句安裝python的which
sudo easy_install tools/which-1.1.0-py2.7.egg
如果出現(xiàn)別的問題,可以參看jxcore編譯ios的前提條件,采取相應(yīng)措施。
https://github.com/jxcore/jxcore/blob/master/doc/HOW_TO_COMPILE.md
* 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)
二、 在mac上安裝jxcore
$ ./configure
$ sudo make install
三、 創(chuàng)建cordova程序,如果沒有安裝cordova,可以自行安裝。
$ cordova create hello com.example.hello HelloWorld
$ cd hello
四、下載安裝jxcore-cordova插件
$ git clone https://github.com/jxcore/jxcore-cordova
利用jxcore-cordova的模板index.html
$ cp ./jxcore-cordova/sample/www/index.html ./www/
拷貝在第一步為在ios上運行而編譯的jxcore包
$ cp -r ~/jxcore/jxcore/out_ios/ios/bin jxcore-cordova/io.jxcore.node/
五、添加cordova的ios platform
$ cordova platforms add ios
$ cordova plugin add jxcore-cordova/io.jxcore.node/
$ cordova build
$ cordova run ios
如果build出錯,"C does not support default arguments"
只需將默認(rèn)值去掉一般就會解決問題。
將
JXCORE_EXTERN(void)
JX_SetString(JXValue *value, const char *val, const int32_t length = 0);
修改為
JXCORE_EXTERN(void)
JX_SetString(JXValue *value, const char *val, const int32_t length);
重新build即可
六、此時應(yīng)該可以看到cordova的運行界面。
七、在Resources/jxcore_app/app.js添加nodejs server
在app.js的最后面添加如下代碼
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,然后通過網(wǎng)頁就可以瀏覽網(wǎng)頁。
- 在windows上用nodejs搭建靜態(tài)文件服務(wù)器的簡單方法
- 用nodejs的實現(xiàn)原理和搭建服務(wù)器(動態(tài))
- nodejs搭建本地服務(wù)器并訪問文件的方法
- 用nodeJS搭建本地文件服務(wù)器的幾種方法小結(jié)
- 搭建簡單的nodejs http服務(wù)器詳解
- 用nodejs搭建websocket服務(wù)器
- NodeJS基礎(chǔ)API搭建服務(wù)器詳細(xì)過程記錄
- 3分鐘快速搭建nodejs本地服務(wù)器方法運行測試html/js
- Nodejs如何搭建Web服務(wù)器
- Nodejs 搭建簡單的Web服務(wù)器詳解及實例
- 用Nodejs搭建服務(wù)器訪問html、css、JS等靜態(tài)資源文件
相關(guān)文章
用node-webkit把web應(yīng)用打包成桌面應(yīng)用(windows環(huán)境)
這篇文章主要介紹了windows環(huán)境下用node-webkit把web應(yīng)用打包成桌面應(yīng)用的教程,需要的朋友可以參考下2018-02-02使用nodejs實現(xiàn)JSON文件自動轉(zhuǎn)Excel的工具(推薦)
這篇文章主要介紹了使用nodejs實現(xiàn),JSON文件自動轉(zhuǎn)Excel的工具,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-06-06詳解使用Nodejs內(nèi)置加密模塊實現(xiàn)對等加密與解密
這篇文章主要介紹了使用Nodejs內(nèi)置加密模塊實現(xiàn)對等加密與解密,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-05-05Node.js實現(xiàn)大文件斷點續(xù)傳示例詳解
這篇文章主要為大家介紹了Node.js實現(xiàn)大文件斷點續(xù)傳示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-11-11