有人可以建议在Air(动作脚本)App和node.js服务器之间进行通信吗?
例如
使用AMFPHP在PHP和Flash(Action Script)应用程序之间进行通信
BlazeDS for Java + Adobe Flex和Adobe Integrated Runtime(AIR)
请将您的建议,任何教程或PoC示例代码发送给我
提前致谢。
这是我为博客写的一个例子。 我认为代码本身几乎可以解释自己。
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 }
关于代码段的简要说明:
URL设置为Localhost端口1337,其中将托管nodeJS。
变量集是测试字段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/');
关于代码段的简要说明: