2012-03-16 8 views
0

nodeJSがインストールされているWebサーバー上で実行されているプロジェクト(Adobe AIR 3.1 - フレックスではない)があります。私は、AIRアプリケーションからNodeJSのjavascriptファイルを呼び出す可能性を検討しています。 AIRアプリケーションのようにいくつかの情報を収集し、NodeJSでsocket.ioを呼び出して、情報をhtmlに接続されたクライアントにディスパッチします。出来ますか ?Adob​​e AIRからnodeJS javascriptファイルを呼び出すことは可能ですか?

答えて

1

これは、ソケットioが使用する基本プロトコルでは確かに可能です。

  1. 利用のExternalInterfaceと実際socket.ioクライアントライブラリ(http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/を利用:私はあなたがこれをやって行くことができるカップルの方法があると思います
  2. socket.ioがAdobe Flashソケット、ロングポーリング、またはjsonpポーリング(http:// socket)に使用するのと同じ方法でnode.jsアプリケーションに情報を送信します。 io /#browser-support)
  3. シムを作成し、ネイティブプロセス(http://www.adobe.com/devnet/air/flex/quickstart/articles/interacting_with_native_process.html)でストリームを開始します。この方法でnode.jsアプリケーションを起動することもできます。

全体として、技術的に可能な限り、Adobe AIRはサーバー側でよく使用されるとは思われません。そこから、node.jsだけを使用することができないというデータがありますか?

明確にするために、socket.ioは素晴らしいですが、双方向通信が必要な場合にのみ完全に利用されています。 AIRアプリケーションからnode.jsアプリケーションにのみデータを送信する場合は、多くのオプションがあります(REST/SOAPなどのHTTPサービスでデータを送信するなど)。

+0

それでもうまくいかない理由はわかりません。私はjavascriptでnodejsを呼び出すphpページを書いていました。私はそのPHPページをAIRからPOSTで呼び出します。ブラウザからそのページを呼び出すと動作しますが、何らかの理由でAIRアプリケーションからは機能しません。提案をお寄せいただきありがとうございます。私はそれを簡単に保つために努力します... – Eric

+0

私の質問は今、AS3/AIRからjavascriptを実行するPOSTのPHPページから呼び出すことができますか? JSは実行されていないようです... – Eric

+0

あなたのソフトウェアスタックは大きな複雑なようです。私が正しく理解していれば、PHPのページにPOSTリクエストを作成しています。これはjavasriptを返します。これは他のプロトコルを使用してノードjsアプリケーションと通信します。 javascriptが使用しているのと同じプロトコルを使用して、ノードjsアプリケーションと直接AS3を話すことができます。しかし、私はそれが不便かもしれないことがわかります(例えば、socket.ioのような複雑なjavascriptライブラリを使用していて、as3に移植することを意味するかもしれません)。 – badunk

関連する問題