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();
}
}
}
分享到:
相关推荐
web在线聊天源码,提供简单的web在线聊天的客户端和服务端。
web在线聊天页面代码,web在线聊天页面代码,web在线聊天页面代码
个人写的一个简易的web聊天室,在tomcat服务器上测试成功。使用AJAX技术异步刷新
web聊天demo web聊天demo web聊天demo web聊天demo web聊天demo web聊天demo
安装方便的简洁在线web聊天室,支持图文发送,兼容QQ内置,微信内置,pc等浏览器 无需服务端操作,php+mysql高效运行,无需第三方插件 高效+极快的运行速度 聊天室+bbs推送 多功能聊天室 支持一键粘贴网页图片发送 自定义...
web图片设计web图片设计web图片设计web图片设计web图片设计
java实现的一个web聊天程序 服务器端使用的是ServerSocket 客户端使用websocket
as3简单的聊天窗体组件,我以前写的一个小东西,拿出来玩玩
java web在线聊天系统是基于servlet的简单聊天室
web聊天室源码
F:\WeF:\Web\汪林林作品\简单聊天室.rarb \汪林林作品\简单聊 F:\Web\汪林林作品 \简单聊天室. rar天室.rar
一个简单的聊天室供大家分享,基于FMS的AS3聊天室源代码
web聊天系统,利用rose建模,聊天系统整体框架设计
DWR comet 多人web聊天例子。
聊天室+bbs推送 多功能聊天室 支持一键粘贴网页图片发送 自定义马甲 分布马甲 多账号一键切换 自定义虚拟在线人数 。 安装教程: 上传至网站根目录 访问域名/install.php 填写对应的数据库信息+管理员信息-...
一个 ASP.NET(C#)+AJAX 实现的WEB聊天室!
Web在线聊天源码,非常全的源码,有数据库的,项目所有文件都在,需要的朋友不要错过哦
基于springboot的web网页聊天器,该聊天器具备单人与多人聊天功能,使用了socket技术的开发,如有问题,请及时反馈
该项目实现了显示在线好友,支持离线消息,等用户上线后进行推送,用户退出也进行推送消息。