前面学习了Flash AS3教程:运算符,今天学习的ApplySocket类,这个类是对socket应用就行了系统化封装,并且考虑了很多因素,整合出来的一套,较为完善的flash程序部分socket解决方案
比如:一些socket服务端,不一定你send过去一条,他马上就会转发,可能会有延时,或者数据堆在一起等现象,而有写socket服务端,在发送数据的时候,会有一些附加码等,这样不利于取出真实数据
该类除了普通的用法,就是对上述假设情况整合了一套解决方案,虽不是很完善,但是能解决大部分问题,至少我碰到过的问题,用这个类应该可以轻松搞定,并且可以适合更复杂的
另外光看讲解,可能不大懂,提供了什么解决方案,来解决上面这些问题,因此,麻烦大家赖着性子,先过一到代码,然后在看后面的用法
index.base.net.ApplySocket类:
对socket进行封装,并且提供多种socket解决方案
构造函数:
public function ApplySocket(_isSide:Boolean = false,_datatype:String = "String")
第一参数,是否使用包边,对数据进行处理,详细请看isSide属性
第二参数,默认数据发布类型
如果构造函数中两个参数都是用默认值,则该类只是一个普普通通的socket类
connect方法:
public function connect(_host:String,_port:int):void
连接远程socket服务端
第一参数:主机地址,可以是202.89.***.***,或者www.*****.com这样的
第二参数:连接的端口号
send方法:
public function send(...strs):void
发送数据到socket服务端
如果datatype为Object或者ArrayObject的时候,send方法传入的参数必须大于或者等于两个!否则会引发错误!
close方法:
public function close():void
关闭与远程服务端连接
connect事件:
当连接上了之后,会调度该事件
close事件:
当socket关闭后,会调度该事件
sync事件:
当有数据需要同步的时候,会调度该事件
error事件:
当连接失败的时候,会调度该事件
静态常量:
public static const ARRAY:String = "Array";
public static const STRING:String = "String";
public static const OBJECT:String = "Object";
public static const ARRAY_ARRAY:String = "ArrayArray";
public static const ARRAY_OBJECT:String = "ArrayObject";
分别表示datatype的5种类型
host属性:
public var host:String;
当connect后,会自动把主机地址记录到该值上
port属性:
public var port:int;
当connect后,会自动把连接端口号记录到该值上
space属性:
public var space:String = " ";
当send传入2个或者2个以上参数时,采用何种值进行隔开,默认是 空格,如果将值改为"",则表示不用间隔进行隔开
比如:一些socket服务端,不一定你send过去一条,他马上就会转发,可能会有延时,或者数据堆在一起等现象,而有写socket服务端,在发送数据的时候,会有一些附加码等,这样不利于取出真实数据
该类除了普通的用法,就是对上述假设情况整合了一套解决方案,虽不是很完善,但是能解决大部分问题,至少我碰到过的问题,用这个类应该可以轻松搞定,并且可以适合更复杂的
另外光看讲解,可能不大懂,提供了什么解决方案,来解决上面这些问题,因此,麻烦大家赖着性子,先过一到代码,然后在看后面的用法
index.base.net.ApplySocket类:
对socket进行封装,并且提供多种socket解决方案
构造函数:
public function ApplySocket(_isSide:Boolean = false,_datatype:String = "String")
第一参数,是否使用包边,对数据进行处理,详细请看isSide属性
第二参数,默认数据发布类型
如果构造函数中两个参数都是用默认值,则该类只是一个普普通通的socket类
connect方法:
public function connect(_host:String,_port:int):void
连接远程socket服务端
第一参数:主机地址,可以是202.89.***.***,或者www.*****.com这样的
第二参数:连接的端口号
send方法:
public function send(...strs):void
发送数据到socket服务端
如果datatype为Object或者ArrayObject的时候,send方法传入的参数必须大于或者等于两个!否则会引发错误!
close方法:
public function close():void
关闭与远程服务端连接
connect事件:
当连接上了之后,会调度该事件
close事件:
当socket关闭后,会调度该事件
sync事件:
当有数据需要同步的时候,会调度该事件
error事件:
当连接失败的时候,会调度该事件
静态常量:
public static const ARRAY:String = "Array";
public static const STRING:String = "String";
public static const OBJECT:String = "Object";
public static const ARRAY_ARRAY:String = "ArrayArray";
public static const ARRAY_OBJECT:String = "ArrayObject";
分别表示datatype的5种类型
host属性:
public var host:String;
当connect后,会自动把主机地址记录到该值上
port属性:
public var port:int;
当connect后,会自动把连接端口号记录到该值上
space属性:
public var space:String = " ";
当send传入2个或者2个以上参数时,采用何种值进行隔开,默认是 空格,如果将值改为"",则表示不用间隔进行隔开










