ホームページ  >  記事  >  ウェブフロントエンド  >  iPhone_node.js上にnodejsサーバーを構築する手順と方法

iPhone_node.js上にnodejsサーバーを構築する手順と方法

WBOY
WBOYオリジナル
2016-05-16 15:51:203368ブラウズ

1. iOS で実行するには、jxcore

をコンパイルします。

コードをコピーします コードは次のとおりです:

$ mkdir ~/jxcore
$ cd ~/jxcore
$ git clone https://github.com/jxcore/jxcore.git


コードをコピー コードは次のとおりです:

$ cd ~/jxcore/jxcore
$ ./build_scripts/ios-compile.sh

インポートどのモジュールが見つからないという問題がある場合は、次のステートメントを使用して Python をインストールします

コードをコピーします コードは次のとおりです:

sudo easy_install tools/what-1.1.0-py2.7.egg

他の問題が発生した場合は、jxcore で ios をコンパイルするための前提条件を参照し、対応する措置を講じることができます。
https://github.com/jxcore/jxcore/blob/master/doc/HOW_TO_COMPILE.md


コードをコピー コードは次のとおりです:

* GCC 4.2 以降 (SpiderMonkey ビルド 4.7 の場合)
* Python 2.6 または 2.7
* GNU Make 3.81 以降
* libexecinfo (FreeBSD および OpenBSD のみ)
* SpiderMonkey の場合: 「どれ」 Python モジュール (sudo easy_install tools/that-1.1.0-py2.7.egg)

2. Mac に jxcore をインストールします

コードをコピー コードは次のとおりです:

$ ./configure
$ sudo make install

3. Cordova プログラムを作成します。Cordova がインストールされていない場合は、自分でインストールできます。

コードをコピー コードは次のとおりです:

$cordova create hello com.example.hello HelloWorld
$ cd こんにちは

4. 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/

5. Cordova の iOS プラットフォームを追加します
コードをコピー コードは次のとおりです:

$cordova プラットフォームは ios を追加
$cordova プラグイン add jxcore-cordova/io.jxcore.node/
$ コルドバ ビルド
$コルドバ実行iOS

ビルドエラーが発生した場合、「C はデフォルトの引数をサポートしていません」

通常はデフォルト値を削除するだけで問題が解決します。

します

コードをコピーします コードは次のとおりです:

JXCORE_EXTERN(無効)
JX_SetString(JXValue *value, const char *val, const int32_t length = 0);

に変更します
コードをコピー コードは次のとおりです:

JXCORE_EXTERN(無効)
JX_SetString(JXValue *value, const char *val, const int32_t length);
再構築するだけ

6. この時点で、cordova 実行インターフェイスが表示されるはずです。
7. Resources/jxcore_app/app.js に Nodejs サーバーを追加します

app.js の最後に次のコードを追加します

コードをコピーします コードは次のとおりです:
関数 getIP() {
var os = require('os');
var nets = os.networkInterfaces(); コンソール.ログ(ネット); for ( ネット内の var a) {
var ifaces = nets[a]
for (ifaces の var o) {
If (ifaces[o].family == "IPv4" && !ifaces[o].internal) { return ifaces[o].address }
                                                                                                                                                                                                                                               null を返す; }
var ip = getIP(); if (!ip) {
console.error("ネットワークに接続する必要があります!");
}

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("リクエストヘッダー X-Forwarded-For"); console.log(req.headers['X-Forwarded-For']); cur_client = req.headers ['x-forwarded-for'];                                                                                                               cordova('log').call('client( ' cur_client ' ) 来ます'); res.end('こんにちは ' cur_client '、私は iPhone app(' ip ') のサーバーです。 ' Date.now() 'n'); }).listen(1337, ip); console.log('http://' ip ':1337/ で実行されているサーバー');

プログラムを実行すると、xcode ログ情報で iPhone の IP が確認でき、Web ページを通じて Web を閲覧できるようになります。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。