2012-04-26 14 views
1

Air(Actionスクリプト)アプリケーションとnode.jsサーバ間の通信方法をお勧めしますか?Air Action ScriptアプリケーションとNode.jsサーバ間の通信方法

  1. AMFPHP

    のJava +のAdobe Flexおよびアドビの統合ランタイム(AIR)のための
  2. BlazeDSの

を使用してPHPとFlashの間の通信(アクションスクリプト)アプリケーションは、私にあなたの提案を送ってください、チュートリアル、またはPoCサンプルコード

ありがとうございました。

答えて

3

ここに私がブログのために書いたサンプルがあります。私は、コードそのものはかなり説明していると思います。


クライアント側のAS3コード:コードスニペットについて

var urlString:String = "http://localhost:1337/"; 

function Submit():void 
{ 
    var requestVars:URLVariables = new URLVariables(); 
    requestVars.Username = "guest"; 

    var request:URLRequest = new URLRequest(); 
    request.url = urlString; 
    request.method = URLRequestMethod.GET; 
    request.data = requestVars; 

    var loader:URLLoader = new URLLoader(); 
    loader.dataFormat = URLLoaderDataFormat.TEXT; 
    loader.addEventListener(Event.COMPLETE, loaderCompleteHandler); 

    try { loader.load(request); } 

    catch (error:Error) { // Handle Immediate Errors } 
} 

function loaderCompleteHandler(e:Event):void 
{ 
    trace(e.target.data); // Response Text 
} 

概要:私たちは requestVarsとしてURLVariablesクラスをインスタンス化することにより、要求データを記入

  • 要求としてURLRequestクラスをインスタンス化することによって、URL &メソッドを記入します。
  • レスポンスを処理するためにload completeイベントハンドラを添付します。
  • エラーをキャッチするためにラップし、loadメソッドを呼び出します。
  • URLは、nodeJSがホストされるLocalhostポート1337に設定されます。

  • 変数セットは、サーバースクリプトでチェックされるテストフィールドUserNameです。


サーバーサイドNodeJSコード:コードスニペットについて

var http = require('http'), url = require('url'); 

http.createServer(function (req, res) { 

    res.writeHead(200, {'Content-Type': 'text/plain'}); 

    var urlObj = url.parse(req.url, true); 

    if(urlObj.query["Username"] == "guest") res.end("True");  

    else res.end("False");  

}).listen(1337, "127.0.0.1"); 

console.log('Server running at http://127.0.0.1:1337/'); 

ブリーフ:

  • コードは、それがホストされているローカルホストサーバのポート1337でリッスンします。
  • クエリ文字列のラップを解除して、UserName変数&をテストします。
  • サーバーはとなります。値はゲストに等しいため、と等しいためです。
+0

ご協力いただきありがとうございます。 AMFPHPやBlazeDSのような第三者図書館はありますか? – Swati

関連する問題