首页 > 开发 > XML > 正文

18.14.XMLSocket通信

2024-09-05 20:46:51
字体:
来源:转载
供稿:网友
18.14.1. 问题
我想创建一个服务器的连接,不需要请求就可接收XML 数据。
18.14.2. 解决办法
使用XMLSocket 类打开服务器连接,它允许服务器发送信息给客户端,当数据到达客户端时已经有被接收和处理的信息了。
18.14.3. 讨论
XMLSocket 类实现了客户端socket,让Flash Player 和AIR 应用程序可以指定IP 地址和域名即可连接到服务器。要使用XMLSocket 类,服务器端必须运行一个能了解XMLSocket所使用协议的伺服器。协议为::
XML 信息是通过全双工传输控制协议/互联网协议(TCP/IP) 流发送。

每个XML 信息都是一个完整的XML 文档,以0字节结束。

通过单个XMLSocket 连接可发送和接收无线数量的XML 信息。要连接到XMLSocket 对象,先创建一个XMLSocket 对象,然后使用IP 地址或域名和端口数字作为参数调用connect 方法:
+展开
-ActionScript
var xmlsock:XMLSocket = new XMLSocket();
xmlsock.connect("127.0.0.1", 8080);

端口号是必须的,因为XMLSocket 连接的端口号不能小于1024。给DataEvent.DATA 事件添加监听器,用于接收数据:
+展开
-ActionScript
xmlsock.addEventListener(DataEvent.DATA, onData);
private function onData(event:DataEvent):void
{
trace("[" + event.type + "] " + XML(event.data));
}

返回的字符串可转换为XML,使用E4X 进行解析。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表