有关ActionScript 3中xml反序列化的最佳实践是什么?

时间:2012-03-31 10:44:50

标签: xml actionscript-3 serialization actionscript deserialization

ActionScript 3中有关xml反序列化的最佳做法是什么?

我正在开发一款实时多人Facebook游戏。 我更喜欢用Flash写客户端。此外,服务器端是用Java编写的。服务器和客户端之间的通信带有“socket”。 服务器和客户端相互发送xml。正如可能预期的那样,Xmls包含“对象”,这些对象派生自位于两侧的类。 类名称和属性是同步的。

谈到我的问题,我在actionscript端尝试了一些用于序列化和反序列化的库。但是大部分都不能完全发挥作用。

例如;

Asx3mer.instance.fromXML(xmlObj)

此库不会将xml转换为具有Array属性的对象,并且该数组包含另一个数组(我的意思是嵌套数组)。

你能帮我解决这个问题吗?

感谢。


首先,我选择了json进行自动序列化。但是当我反序列化json对象时,它被转换为类型为“Object”的对象。每次我都不得不在json字符串中放置一个标识符来处理它的类型。

我研究过AMF,但正如你所提到的,AMF使用它的消息传递标准,我认为在服务器端处理反序列化对象可能很困难(但是现在,我的选择表明客户端反序列化变得难以处理)

1 个答案:

答案 0 :(得分:5)

如果你想要这种自动对象序列化,我建议你使用更好的类型支持。 AMF,本机ActionScript序列化格式可能是您项目的一个非常好的选择。它本身由Flash支持,并且有一个library for Java。格式也比XML紧凑(实际上,我想知道为什么你为你的游戏而不是JSON或者AMF选择XML。)