Flash客户端没有收到来自Node.js的套接字数据
我有问题从socket.io
接收数据到Flash(动作)。
我试过了:
服务器(nodejs)socket.io:
var io = require('socket.io').listen(9000); setInterval(function() { io.sockets.emit('hello'); console.log("test"); }, 500 );
客户端(动作)套接字();
import flash.net.Socket; import flash.events.*; var socket:Socket = new Socket(); Security.allowDomain("*"); socket.connect("localhost", 9000); socket.addEventListener(Event.CONNECT, onConnect); socket.addEventListener(ProgressEvent.SOCKET_DATA, socketDataHandler); function onConnect( evt:Event ):void { trace( "Connected to flash"); } function socketDataHandler(evt:ProgressEvent):void { trace("socketDataHandler: " + evt); }
产量
Flash连接到服务器并跟踪“连接到闪存”,但无法接收数据。 有任何想法吗?
请参阅http://help.adobe.com/zh_CN/FlashPlatform/reference/actionscript/3/flash/net/Socket.html#includeExamplesSummary,并查看名为readResponse
的方法。
您需要从stream中读取字节。
或者只是使用这个例子,你会知道客户端function没有问题。
那么我不认为这将工作,因为socket.io有它自己的协议,使用几个传输方法,如websocket。 但是,你的行动脚本只是有一个正常的闪光sockets,我相信。 最好的是,你使用正常的socket.io JavaScript客户端,并使用消息传递系统与您的动作脚本客户端进行通信。 在这种情况下,我认为这个链接对你来说很有用,其中描述了这个消息。
更新:
这些库可能是你在找什么: https : //github.com/ascorbic/socket-io-actionscript https://github.com/simb/FlashSocket.IO