2010-02-19 36 views
1

我有一个Flex 3客户端连接到一个RoR web服务,用于POST请求。当webservice返回代码201 Created时,Flex会触发一个resultEvent,所有事情都很酷,因为我可以像预期的那样解析XML响应。Actionscript是否暴露Web服务faultEvent中的XML?它如何被访问?

但是,当POST请求中发送的数据出现问题时,Web服务会返回422,因此Flex将触发faultEvent。除了422代码之外,web服务还提供用户在重新提交之前要纠正的错误列表。我可以在查尔斯看到这些。示例如下:

<errors> 
    <error>Username and password invalid</error> 
</errors> 

我需要能够在Actionscript中访问此XML。对于resultEvent,这很容易使用event.result完成。但是,对于faultEvent,我看不到任何访问返回的XML的方法。

有谁知道这是可能的吗?或者我错过了一些明显的东西?

由于提前,

戴夫

回答

1

基本上Flash可以只公开通过浏览器提供给它的数据。浏览器拥有这些数据,但不会将其转发给插件(或者至少没有,请参阅下文)。

这是覆盖在下面的Flex错误:

https://bugs.adobe.com/jira/browse/SDK-11841

这与FP10固定在Firefox 3.1。我不确定哪个Flex SDK版本包含该修正。为了在其他浏览器中工作,它们都必须解决问题(它影响所有插件,而不仅仅是Flash)。

+0

谢谢萨姆,那是很棒的信息。我想我们必须更改web服务以发送错误XML的201响应。不理想,但它会工作。 – 2010-02-19 21:25:11