gpt4 book ai didi

actionscript-3 - 如何从 as3 中的 XMLSocket 读取数据?

转载 作者:行者123 更新时间:2023-12-04 04:25:42 25 4
gpt4 key购买 nike

在使用 Socket 时,我能够读取数据为

while (socket.bytesAvailable) 
{
textArea.text += socket.readUTFBytes(socket.bytesAvailable);
}

如何在使用 XMLSocket 时读取数据?使用 xmlSocket.toString() 就足够了吗?

最佳答案

不,使用 XMLSocket 接收数据是事件驱动的,您创建一个套接字,设置事件处理程序:

socket = new XMLSocket();   
socket.addEventListener(Event.CLOSE, closeHandler, false, 0, true);
socket.addEventListener(Event.CONNECT, connectHandler, false, 0, true);
socket.addEventListener(DataEvent.DATA, dataHandler, false, 0, true);
socket.addEventListener(IOErrorEvent.IO_ERROR, errorHandler, false, 0, true);
socket.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityHandler, false, 0, true);

socket.connect(host, port);

您将在 dataHandler 中接收数据:

private function dataHandler(e: DataEvent): void {  
var xml: XML = XML(e.data);
...
}

现在您可以使用任何您想要的方式处理 XML。发送更容易,但你仍然必须考虑到你在调用 connect 后并没有立即连接,你必须等到 connectHandler 被调用后再发送数据:

var xml: XML = ...
if (socket.connected) {
socket.send(xml);
}

关于actionscript-3 - 如何从 as3 中的 XMLSocket 读取数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6106935/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com