[AS3]XMLSocket发送数据并输出 XMLSocket 事件过程
以下示例演示了使用 XMLSocket 发送数据并输出 XMLSocket 事件过程中的信息。这是使用以下步骤完成的
以下示例演示了使用 XMLSocket 发送数据并输出 XMLSocket 事件过程中的信息。这是使用以下步骤完成的:
init()
创建名为socket
的 XMLSocket 实例,并将socket
传递给configureListeners()
(如下所述),然后使用域作为主机名和端口号8080
调用 XMLSocket 对象的connect()
方法。configureListeners()
方法为每个受支持的 XMLSocket 事件添加侦听器:closeHandler()
:侦听close
事件,在网络连接关闭后调度该事件。connectHandler()
:侦听connect
事件,在建立网络连接后调度该事件。dataHandler()
:侦听data
事件,在 XMLSocket 每次接收新数据时调度该事件。progressHandler()
:侦听progress
事件,已调用send()
并且发送正在进行时调度该事件。securityErrorHandler()
:侦听securityError
事件,如果试图使用错误的本地回放安全性设置或端口号低于 1024 的端口访问 XMLSocket,则调度该事件。ioErrorHandler()
:侦听ioError
事件,仅当发送或接收数据的操作失败时,才会发生该事件。
注意:
- 若要让本示例正常工作,需要一个在域上运行并使用 8080 端口的服务器。
- 如果运行的是 Flash Player 9.0.124.0 或更高版本,则需要在服务器上放置一个套接字策略文件,以允许建立从域到端口 8080 的套接字连接。有关提供套接字策略文件的信息,请参阅 Flash Player 开发人员中心主题:设置套接字策略文件服务器。
- <html>
- <head>
- <script src="AIRAliases.js" />
- <script>
- var hostName = "[yourDomain]"; // String
- var port = 8080; // Number
- var socket; // XMLSocket
- function init() {
- socket = new air.XMLSocket();
- configureListeners(socket);
- if (hostName && port) {
- socket.connect(hostName, port);
- }
- }
- function send(data) {
- socket.send(data);
- }
- function configureListeners(dispatcher) {
- dispatcher.addEventListener(air.Event.CLOSE, closeHandler);
- dispatcher.addEventListener(air.Event.CONNECT, connectHandler);
- dispatcher.addEventListener(air.DataEvent.DATA, dataHandler);
- dispatcher.addEventListener(air.IOErrorEvent.IO_ERROR, ioErrorHandler);
- dispatcher.addEventListener(air.ProgressEvent.PROGRESS, progressHandler);
- dispatcher.addEventListener(air.SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
- }
- function closeHandler(event) {
- air.trace("closeHandler: " + event);
- }
- function connectHandler(event) {
- air.trace("connectHandler: " + event);
- }
- function dataHandler(event) {
- air.trace("dataHandler: " + event);
- }
- function ioErrorHandler(event) {
- air.trace("ioErrorHandler: " + event);
- }
- function progressHandler(event) {
- air.trace("progressHandler loaded:" + event.bytesLoaded + " total: " + event.bytesTotal);
- }
- function securityErrorHandler(event) {
- air.trace("securityErrorHandler: " + event);
- }
- </script>
- </head>
- <body onload="init()">
- </body>
- </html>
热门文章推荐
- [HLS]做自己的m3u8点播系统使用HTTP Live Streaming(HLS技术)
- [FMS]FMS流媒体服务器配置与使用相关的介绍
- [AS3]什么是M3U8,与HTML5的区别是什么
- AS2.0 让flash自适应全屏,并且不自动缩放
- [AS3]as3.0的sound类常用技巧整理
- [AS3]as3与ByteArray详解、ByteArray介绍、ByteArray用法
- 关于RTMP,RTMPT,RTMPS,RTMPE,RTMPTE协议的介绍
- [JS]分享浏览器弹出窗口不被拦截JS示例
请稍候...