如何访问 IOErrorEvent 上的 AS3 URLLoader 返回数据
Posted
技术标签:
【中文标题】如何访问 IOErrorEvent 上的 AS3 URLLoader 返回数据【英文标题】:How to access AS3 URLLoader return data on IOErrorEvent 【发布时间】:2010-09-16 09:02:12 【问题描述】:我正在为 api 编写一个动作脚本库。我使用 URLLoader 对象从 api 加载数据。我遇到的问题是,每当 api 在 400 秒内返回 http 状态时,actionscript 都会将此视为 io 错误。这一切都很好,但是,如果是这种情况,似乎无法访问返回的任何数据。因此,任何有关返回的错误原因的有用 xml 都会丢失。有没有办法解决?如果 api 返回错误时无法为开发人员提供任何有用的信息,这会使库有点痛苦。感谢您的帮助!
【问题讨论】:
【参考方案1】:您无法访问 400 事件中的数据。但是,您可以通过添加 HTTP 状态事件的侦听器来获取状态代码。
如果您控制后端代码,有两种解决方法:
一种选择是让后端响应 200s,即使在与 flash 客户端通信时出现错误情况,但使用特殊的错误代码,以便客户端知道 200 响应实际上是一个错误。
另一个选项是在包含错误消息的客户端上设置一个 cookie。 Flash 无法本地访问 cookie,但您可以使用 ExternalInterface 调用 javascript 来读取 cookie,或者客户端可以选择对读取 cookie 并以错误消息响应的特殊后端控制器进行另一次访问。
【讨论】:
以上是关于如何访问 IOErrorEvent 上的 AS3 URLLoader 返回数据的主要内容,如果未能解决你的问题,请参考以下文章