AMF3 + AS 3.0 + ASP.NET 完整配置过程
啥是AMF
AMF是Action Message Format的简写,它是一种二进制的数据格式, 它的设计,是为了把actionscript里面的数据(包括Object, Array, Boolean, Number等)序列化成 一段你基本看不大懂的二进制数据, 然后你可以把这段数据随意发送给其他地方的程序,比如发给远程的服务器, 在远程服务器那边, 又可以把这段数据给还原出来。以此达到一个数据传输的作用。
为什么要用AMF
通常情况下我们使用JSON或者XML来做数据的传输, 他们的好处是文本数据易读, 容易修改, 坏处在于文本数据体积较大,而且数据的组织有其局限性,比如,你如何在一个JSON/xml里面表达 内含自引用的数据?并且,本人自认为XML和JSON的解析效率并没有AMF高(。。请高人指正)
二进制协议的缺点和优点刚好跟JSON/XML反过来。
那么, 二进制协议是不是只有AMF一个呢。。答案明显是否定的, 你完全可以自定义自己的二进制数据格式,用AMF只是由于它是现成的,拿来即可用,不用重新去发明轮子。当然,现在很多WEB游戏, 包括不少socialGame,都自己定义过一套二进制的数据格式。(比如人人网上的人人农场)
AMF消息流(AMF Message)
AMF消息流跟AMF不是一回事, AMF消息流就是一个数据包package,它里面包含了版本号,头部,消息体等数据, 头部和消息体里面用到的数据使用AMF的格式来进行存储。
AMF数据流常用于NetConnection, SharedObject等