我一直想让闪存接收来自我拥有的小型串行到IP转换器的TCP消息。使用其他软件,我可以看到消息通过,所以我知道它有效。 从闪存我尝试过使用一个套接字和一个XML套接字,但我不知道我在做什么,我设法得到一个连接,但它似乎不输出数据,或触发事件时数据被接收。 不知道我对此有正确的方式,任何帮助将不胜感激。TCP客户端闪存AS3
感谢
我一直想让闪存接收来自我拥有的小型串行到IP转换器的TCP消息。使用其他软件,我可以看到消息通过,所以我知道它有效。 从闪存我尝试过使用一个套接字和一个XML套接字,但我不知道我在做什么,我设法得到一个连接,但它似乎不输出数据,或触发事件时数据被接收。 不知道我对此有正确的方式,任何帮助将不胜感激。TCP客户端闪存AS3
感谢
以下是我用于使其工作的代码。谢谢你们的帮助。
import flash.events.Event;
import flash.events.ProgressEvent;
import flash.net.Socket;
var RFIDSocket:Socket = new Socket(RFIDSocketIP,RFIDSocketPort);
RFIDSocket.addEventListener(ProgressEvent.SOCKET_DATA, socketData);
private function socketData(e:ProgressEvent):void {
var rawData:String = RFIDSocket.readUTFBytes(RFIDSocket.bytesAvailable);
var RFIDData:String = RFIDData.substring(1,11);
if(debugMode){
MonsterDebugger.trace(this, RFIDData);
}
RFIDSocket.flush();
}
我的猜测是,你很可能击中的安全限制。 Flash需要通过套接字连接到任何服务器的权限,它会在端口843上寻找权限,以及用于绕过它的一些示例代码。如果您无法直接访问您尝试连接的服务器,则可能需要使用代理服务器进行探索。
是您的服务器在线运行还是本地运行?如果它在线,让我知道URI和端口,然后我会发布一个片段,前一天写了一个简单的TCP客户端,所以不应该为你写一个片段。 – Zevan 2011-03-23 17:38:13
查看[本教程](http://gotoandlearn.com/play.php?id=69)关于二进制套接字的基础知识。这个例子适用于pop服务器,但概念很相似。 – Sam 2011-03-23 18:15:03
它在本地运行,它只是其中一个:以TCP模式运行的http://tibbo.com/products/controllers/ds203.html。我将通读这篇教程和文章,并让大家知道它是否将它整理出来。谢谢! – 2011-03-24 09:10:59