package cn.cjxo
{import flash.display.Sprite;
import flash.events.DataEvent;
import flash.events.Event;
import flash.external.ExternalInterface;
import flash.net.XMLSocket;
/**
* @author ChenJianxiang
* @deprecated JavaSocket->ActionSocket<-JavaSocketServer
* function SocketConnect(host,port){} //JavaScript CALL ActionScript 连接
* function SocketSend(data){} //JavaScript CALL ActionScript 发送
* function SocketClose(){} //JavaScript CALL ActionScript 关闭
* function SocketOnInit(){} //初始化
* function SocketOnConnect(success){} //ActionScript CALL JavaScript 连接成功
* function SocketOnData(data){} //ActionScript CALL JavaScript 服务器发送数据
* function SocketOnClose(){} //ActionScript CALL JavaScript 服务器发关闭
* 通过flash的xmlSocket client的发送的xml,应该用”\0\n”结尾
*/
public class Main extends Sprite {
private var xmlSocket:XMLSocket = null;
public function Main():void {
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
//ExternalInterface.call("cal", "被我调到了9!!");
ExternalInterface.addCallback("SocketConnect", _socketConnect);
ExternalInterface.addCallback("SocketSend", _socketSend);
ExternalInterface.addCallback("SocketClose", _socketClose);
//ExternalInterface.addCallback("SocketOnInit", _socketConnect);
xmlSocket.addEventListener(Event.CONNECT, function(e:Event):void{ //ActionScript CALL JavaScript 连接成功
ExternalInterface.call("SocketOnConnect", xmlSocket.connected);
});
xmlSocket.addEventListener(DataEvent.DATA, function(e:Event):void { //ActionScript CALL JavaScript 服务器发送数据
ExternalInterface.call("SocketOnData", "");
});
xmlSocket.addEventListener(Event.CLOSE, function(e:Event):void { //ActionScript CALL JavaScript 服务器发关闭
ExternalInterface.call("SocketOnClose", "");
});
}
private function init(e:Event = null):void{
removeEventListener(Event.ADDED_TO_STAGE, init);
if(xmlSocket == null){
xmlSocket = new XMLSocket();//建立XMLSocket对象
}
}
/**
* 连接
* @param host
* @param port
*/
private function _socketConnect(host:String, port:int):void {
if (xmlSocket.connected) {
ExternalInterface.call("cal", "联上了还联什么"); //如果重复连接
return;
}
xmlSocket.connect(host, port);
}
/**
* 发送信息
* @param message
*/
private function _socketSend(message:String):void {
xmlSocket.send(message);
}
private function _socketClose():void {
xmlSocket.close();
}
}
}
分享到:
相关推荐
在本案例中,"flex实现web聊天源码"是指使用Flex技术创建的Web聊天应用程序的源代码。 Web聊天应用程序是通过网络实现实时通信的一种方式,通常包括文字聊天、音频或视频通话等功能。在Flex中实现Web聊天,开发者...
在Web开发中,通常用于实现聊天室、在线游戏、实时数据更新等场景。AS3(ActionScript 3.0)是Adobe开发的编程语言,主要应用于Flash和Flex项目。`as3-websocket-server-master`是一个使用AS3实现的WebSocket服务器...
- **Socket 通信**: 支持 TCP 和 UDP 协议,可用于构建实时聊天应用或多人在线游戏。 - **跨平台能力**: AS3 应用程序不仅可以在 Web 浏览器中运行,还可以通过 Adobe AIR 打包为桌面应用或移动应用。 #### 三、...
使用JSONUtil库(如as3corelib)可以方便地在AS3中进行JSON操作。 2. 消息显示:接收到新消息后,需要更新文本区域。可以创建一个TextFormat对象来设置字体样式,然后使用TextField的appendText()方法添加新消息。...
### Asp.net Web應用程式設計-聊天室進階版 #### 概述 在《Asp.net Web應用程式設計-簡易聊天室》一文中,作者周季賢介紹了如何使用Asp.net 2.0來實現一個基礎的網路聊天室。在該基礎之上,《Asp.net Web應用程式...
5. **事件驱动编程**:在AS3中,Socket对象会触发各种事件,如connect、data和error,这些事件可以绑定到事件监听器以处理通信过程中的不同阶段。例如,当接收到新数据时,监听器函数会被调用,以便处理和响应接收到...
Web QQ是腾讯公司推出的一种基于网页的QQ聊天服务,用户无需下载客户端,只需在网页上即可进行QQ聊天。 HTTP POST方法是Web应用中常见的数据提交方式,与GET方法不同,POST将数据包含在请求体中发送到服务器。在VB...
在Web2.0时代,Flash因其良好的跨平台性和实时交互性,常被用于创建在线聊天室。下面将详细探讨Flash聊天室源码的相关知识点。 1. **Flash技术**:Flash是一种矢量图形和多媒体创作工具,由Adobe公司开发,主要用于...
在本教程中,我们将探索如何创建一个名为"JARVIS"的语音接口,它使用ActionScript 3(AS3)和Adobe Integrated Runtime (AIR)来实现与基于AIML(Artificial Intelligence Markup Language)聊天机器人的交互。...
* import…as… 语句 * all 魔术变量 * 循环导入问题 * 安装第三方库 * 发布模块到 pip 异常处理 * 异常介绍 * 捕获异常 * 异常的传递和处理 * try…except…语句介绍 * 自定义异常 生成器迭代器装饰器 * 生成器...
在Web开发领域,构建实时互动的聊天室是一项常见的需求,而基于Adobe Flex的Flash技术曾是实现此类应用的主流选择之一。本文将深入探讨如何使用Flex来创建一个功能完备的Flash聊天室,包括核心技术点、设计思路以及...
这对于实时应用,如聊天室、游戏服务器或者股票行情推送等场景非常有用。通过`websockets`模块,可以方便地处理WebSocket请求和发送消息。 ### 总结 Python的aiohttp库为asyncio环境提供了全面的HTTP客户端和...
这对于创建Web应用程序,如实时聊天或数据交换,非常有用。 8. **错误处理**:良好的错误处理是确保程序稳定性的关键。学习如何使用`try...catch`语句捕获和处理运行时错误,是编写健壮代码的必备技能。 9. **...
此外,它还强调了实时Web应用的实现,这对游戏、在线聊天室或其他需要即时反馈的应用至关重要。尽管现代Web开发更多地依赖于HTML5和WebSocket,但对于历史背景和经典技术的学习,这个例子仍然有价值。
综上所述,“认我测”在线认证检测系统,率先填补了认证检测领域移动端的空缺,提供了Web浏览器+移动端的双端访问模式,给用户提供了多种访问途径,真正实现了用户和检测机构的随时随地在线下单检测。 关键词:...
【FlashASPmvc.rar】是一个包含AS3.0视频聊天应用程序的压缩包,它演示了如何在Web环境中实现实时通信功能。这个项目的核心是利用Flash技术与后端ASP.NET MVC框架的整合,为用户提供一个交互式的视频聊天平台。下面...
总之,WebSocket ActionScript客户端为ActionScript开发者提供了一种强大的工具,能够在Flash和AIR环境中实现实时通信,这对于在线游戏、实时聊天、股票交易等需要实时更新的应用场景非常有用。理解并掌握WebSocket...
【易买网+聊天室】项目是一个基于...总结来说,易买网+聊天室项目融合了Web开发的多个核心技术,包括Servlet、JSP、WebSocket、数据库管理和前端开发,旨在提供一个既具备购物功能又具有实时沟通特性的在线平台。
它提供了一整套组件库、强大的数据服务以及MXML标记语言,使得开发者能够快速创建交互式、图形丰富的Web应用。在本项目中,Flex将作为用户界面的主要构建工具,负责视频会议的图形界面设计和用户交互。 接着,我们...
ASP.NET MVC聊天室 [Example Page](http://mpwchat.azurewebsites.net/Home/chat) > This is a simple chat room I made for my ASP.NET class. It uses a SignalR hub as the server, and Razor along with ...