如何在Flex中解码AMF3对象。我们有一个python Socket服务器,它将数据编码为AMF3。
我们已经在Android客户端中反序列化数据,但无法在Flex中找到一种好方法。
看看我们如何为Android客户端做Java。
String res = res.substring(1);
InputStream in = new ByteArrayInputStream(res.getBytes());
DataInputStream dis = new DataInputStream(in);
AMF3Deserializer amf = new AMF3Deserializer(dis);
Object o = null;
try {
o = amf.readObject();
} catch (IOException e) {
e.printStackTrace();
}
Map map = (HashMap)o;
Object[] ob = (Object[]) map.get("result_set");
Object[] obn = (Object[]) ob[0];
答案 0 :(得分:2)
ByteArray.readObject()将解码AMF。
答案 1 :(得分:2)
这个话题有新的搜索者,
在AS3中,使用flash.net.Socket.readObject()
方法。它将自动将对象读取为AMF格式
答案 2 :(得分:0)
您可以使用RemoteObject
连接到AMF服务。
阅读here了解详情。
答案 3 :(得分:0)
为什么不使用RemoteObject来拨打服务器?然后自动处理反序列化。
您是否在服务器上编写了自己的AMF序列化/反序列化方法?或者你使用PythonAMF之类的东西?