2010-01-30 27 views
2

我想通过动作脚本3中的套接字连接将对象传递给服务器。什么是最好的方式来做到这一点?将对象写入AS3/actionscript中的套接字?

是序列化更好吗? 或者我应该先对它进行编码然后将它作为字符串发送?

请帮我理解这个吗?

谢谢

回答

2

如果你的对象是实现IExternalizable的,你叫registerClassAlias你是安全使用一个对象的读写。但请注意,实现IExternalizable时不允许使用构造函数参数。

例如:

package { 
    import flash.net.*; 
    import flash.utils.*; 

    public class Foo implements IExternalizable { 
    registerClassAlias("Foo", Foo); 

    public var bar: String; 

    public function Foo() { // No constructor parameters allowed. 
    } 

    public function writeExternal(output: IDataOutput): void { output.writeUTF(bar); } 
    public function readExternal(input: IDataInput): void { bar = input.readUTF(); } 
    } 
} 

然后您安全地调用一个对象的读写任何为IDataOutput或的IDataInput其例如一个插座,ByteArray或URLStream在。