·您当前的位置:首页 > 技术教程 > AS2与AS3技术 >

[AS3]as3连fms失败的解决办法

时间:2015-04-13 15:05酷播
此 NetConnection 实例的对象编码(AMF 版本)。 此属性的默认值为 defaultObjectEncoding 的值。 可接受的值为 ObjectEncoding.AMF3 和 ObjectEncoding.AMF0

_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 属性,并包含说明对象编码不正确的描述。

热门文章推荐

请稍候...

保利威视云平台-轻松实现点播直播视频应用

酷播云数据统计分析跨平台播放器