用户名: 密码: 验证码: QQ--程序群:31736530 动画群:38836599
闪无忧
 
首 页 业界新闻 业界杂谈 Flash教程 Flash源码 Flash图书 Flash酷站 Flex & AIR 供求信息
   本栏目通告:   有意向写收费精品教程的朋友,请联系本站合作
当前位置 :首页>flash教程>Flash应用开发>列表

Socket通讯中AMF3编码分析

[来源:37studio.net | 作者:37 | 时间:2009-02-27 | 点击:  | 收藏本文  【 】]
5uflash文章摘要:AMF3是一种紧凑型的二进制编码, 由于是二进制紧凑型的,所以在网络传输中它的效率很高. 但是AMF3它并不是一个压缩型的编码, 一个AMF3数据包其实有很大一部分是描述信息. 通过下面的分析,也许你能明白这一点. 在Socket通讯中,我是这样子做的: 它的解码过程是: 读取shor

AMF3是一种紧凑型的二进制编码, 由于是二进制紧凑型的,所以在网络传输中它的效率很高. 但是AMF3它并不是一个压缩型的编码, 一个AMF3数据包其实有很大一部分是描述信息. 通过下面的分析,也许你能明白这一点.
在Socket通讯中,我是这样子做的:

它的解码过程是: 读取short型数据length,然后检测缓冲区数据是否大于length,如果大于length则读取length长个body,再将Body进行解 码,接下来再读取下一个length,再检测Body再将Body解码. 基本上通讯的解码过程都如此,不同的是,有些编解码是通过回车符或是特殊字符来处理. 其实AMF3的编码跟这个也有相似的地方,它的最细小的定义是:

这里的Type指的是一个AS3的数据类型, 如Number或是String等,而Value就是指这个type的数据内容,因为通常简单的数据类型的长度是可确定的,如int型是占四个字节,或是short只占两个字节.对于字符串类型,它的定义是:

这里的这个Length是一个short型,它占两个字节,最大可传输2的16乘方个字节的字符串. 基础的就这些了.


文章如果有错误或者缺少文件,请发邮件提交给我们
上一篇:Flash地图编辑器下载
下一篇:闪刀浪子的地图编辑器对应的地图解析类及教程
>>> 最新评论:(共有 0 位网友发表了评论)      查看所有评论
  发表评论
用户名: 新注册) 密码: 匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
·本站发布内容均为客观表达作者观点,不代表闪无忧立场,请勿攻击和漫骂
·用户发表意见仅代表其个人意见,并且承担一切因发表内容引起的纠纷和责任
·本站管理人员有权在不通知用户的情况下删除不符合规定的评论信息或留做证据
·请客观的评价您所看到的资讯,提倡就事论事,杜绝漫骂和人身攻击等不文明行为
  教程分类
  基础操作   动画特效
  应用开发   组件学习
  As程序   动画教程
  Flash cs3   AS 3.0
  FCS/FMS教程   Loading教程
  Flash与Web   Flash教程连载
  Flash 3d
  相关文章
·Flash性能优化的一些细节
·关于游戏引擎PushButton的教程和
·关于游戏引擎PushButton的教程和
·关于游戏引擎PushButton的教程和
·Flash Player的“跑道/切片模型
·11款基于flash的等角(2.5D)引
·flash Undo/Redo的实现原理和方
·控制加载flash文件尺寸大小-uilo
·[flash疯狂破解加密系列三]内存
·[flash疯狂破解加密系列二]疯狂
  热门文章
·Flash进度条的制作详细讲解(组图)
·Flex 3 AdvancedDataGrid的使用(第二
·全Flash动画网站实现的基础教学
·FLV播放器汇总
·FLASH+XML相册(附源码)
·flash幻灯片网页效果
·超酷flash光晕移动效果
·Flash打造简单的飘雪动画视觉特效
·flash水影效果字
·flash春雷闪电效果
·Flash制作大雪纷飞效果动画
关于我们 - 免责声明 - 网站地图 - 商务服务 - 联系我们 - RSS地图
©CopyRight 2006-2008, 5UFlash.COM, Inc. All Rights Reserved
鲁ICP备06034971号