_nc.objectEncoding = ObjectEncoding.AMF0;
添加以上代码即可..
objectEncoding 属性
objectEncoding:uint [read-write]
语言版本 : ActionScript 3.0 Player 版本 : Flash Player 9
此 NetConnection 实例的对象编码(AMF 版本)。 此属性的默认值为 defaultObjectEncoding 的值。 可接受的值为 ObjectEncoding.AMF3 和 ObjectEncoding.AMF0。
如果 ActionScript 3.0 SWF 文件需要与在 Flash Player 9 之前发布的服务器进行通信,则了解此属性非常重要。
当将对象写为二进制数据或从二进制数据读取对象时,objectEncoding 属性将指示应使用哪一个版本的 Action Message Format:ActionScript 3.0 格式 (ObjectEncoding.AMF3) 还是 ActionScript 1.0 或 ActionScript 2.0 格式 (ObjectEncoding.AMF0)。 当使用 NetConnection 对象连接到服务器时,有以下三种方案可用:
独占式连接到同 Flash Player 9 一起发布或在 Flash Player 9 之后发布的服务器,例如 Flex 2。 defaultObjectEncoding 的默认值是 ObjectEncoding.AMF3。 在此 SWF 文件中创建的所有 NetConnection 实例均使用 AMF3 序列化,因此不必设置 Flash Player 应使用哪种 AMF 编码。独占式连接到在 Flash Player 9 之前发布的服务器,例如 Flex 1.5 和 Flash Media Server 2。 在此方案中,请将静态 defaultObjectEncoding 属性设置为 ObjectEncoding.AMF0。 在此 SWF 文件中创建的所有 NetConnection 实例均使用 AMF0 序列化。 因此不必设置 objectEncoding 属性。 连接到使用不同编码版本的多个服务器。 不使用 defaultObjectEncoding,而是使用每个连接的 objectEncoding 属性设置每个连接的对象编码。 若要连接到使用 AMF0 编码的服务器,例如 Flex 1.5 和 Flash Media Server 2,则将此属性设置为 ObjectEncoding.AMF0;若要连接到使用 AMF3 编码的服务器,例如 Flex 2,则将此属性设置为 ObjectEncoding.AMF3。更改 defaultObjectEncoding 不会影响现有 NetConnection 实例,只会影响随后创建的实例。
一旦连接到 NetConnection 实例,其 objectEncoding 属性将变为只读。
如果连接服务器时使用了错误的编码,则 Flash Player 将调度 netStatus 事件。 NetStatusEvent.info 属性包含一个信息对象,此信息对象具有值为 NetConnection.Connect.Failed 的 code 属性,并包含说明对象编码不正确的描述。