4
AMF协议里面的数据类型
详细的数据类型,参考Red5
FMS3中为了实现H.264数据的直播而增加了一个数据类型,这个类型的值为0×16,这个类型不在下表中,如果需要请参看
http://www.cnweblog.com/fly2700/archive/2009/02/06/297957.html
enum AMF
{
/**
* Boolean value marker constant
*/
TYPE_BOOLEAN = 0x01,
/**
* String marker constant
*/
TYPE_STRING = 0x02,
/**
* Object marker constant
*/
TYPE_OBJECT = 0x03,
/**
* Movieclip marker constant
*/
TYPE_MOVIECLIP = 0x04 ,
/**
* Null marker constant
*/
TYPE_NULL = 0x05,
/**
* Undefined marker constant
*/
TYPE_UNDEFINED = 0x06,
/**
* Object reference marker constant
*/
TYPE_REFERENCE = 0x07,
/**
* Mixed array marker constant
*/
TYPE_MIXED_ARRAY = 0x08,
/**
* End of object marker constant
*/
TYPE_END_OF_OBJECT = 0x09,
/**
* Array marker constant
*/
TYPE_ARRAY = 0x0A,
/**
* Date marker constant
*/
TYPE_DATE = 0x0B,
/**
* Long string marker constant
*/
TYPE_LONG_STRING = 0x0C,
/**
* Unsupported type marker constant
*/
TYPE_UNSUPPORTED = 0x0D,
/**
* Recordset marker constant
*/
TYPE_RECORDSET = 0x0E,
/**
* XML marker constant
*/
TYPE_XML = 0x0F,
/**
* Class marker constant
*/
TYPE_CLASS_OBJECT = 0x10,
/**
* Object marker constant (for AMF3)
*/
TYPE_AMF3_OBJECT = 0x11,
/**
* true marker constant
*/
VALUE_TRUE = 0x01,
/**
* false marker constant
*/
VALUE_FALSE = 0x00
};

AMF是Action Message Format协议的简称,AMF协议是Adobe公司自己的协议,主要用于数据交互和远程过程调用,在功能上相当于WebService,但是AMF与WebService中的XML不同的是AMF是二进制数据,而XML是文本数据,AMF的传输效率比XML高。AMF使用HTTP方式传输,目前主要是用于ActionScript中,即实现Flex和Server之间的通信。
Was this answer helpful?
LikeDislikeAMF目前有两种版本,AMF0和AMF3,他们在数据类型的定义上有细微不同。关于AMF的官方文档参见:http://download.macromedia.com/pub/labs/amf/amf3_spec_121207.pdf
Was this answer helpful?
LikeDislikeWas this answer helpful?
LikeDislikepublic enum DataType { Number = 0, Boolean = 1, String = 2, UntypedObject = 3, MovieClip = 4, Null = 5, Undefined = 6, ReferencedObject = 7, MixedArray = 8, End = 9, Array = 10,//0x0A Date = 11,//0x0B LongString = 12,//0x0C TypeAsObject = 13,//0x0D Recordset = 14,//0x0E Xml = 15,//0x0F TypedObject = 16,//0x10 AMF3data=17//0x11 }Was this answer helpful?
LikeDislike