您的位置:首页 > 其它

<org manual>翻译--4.7 文件链接中的搜索选项

2013-10-10 07:15 435 查看
最正规的Restful HTTPService处理办法是看HTTP response的头部的状态代码。比如200表示OK,500表示内部服务器错误,404表示找不到对应文件等等。但是Flex的HTTPService并没有提供任何可以读取HTTP response头部的办法,所以,这种正规的办法在目前是行不通的。某人直接就说:Flex can't do REST

当然这样的说法比较极端,因为实际工作中总可以有一些Work around,通过其他途径来解决问题。

因为Flex没有办法读取状态代码,所以在Rails的实现中,默认所有的Action的返回结果都是200(OK)。然后,所有的错误信息,通过 render :xml => @account.errors.to_xml ,作为结果返回。

比如:

xml 代码

 

<?xml version="1.0" encoding="UTF-8"?>  

<errors>  

  <error>Name 账户名称不能为空</error>  

</errors>  

然后,在结果返回函数里面处理。

js 代码

 

//just prototype code  

public function onResult(evt:ResultEvent):void  

{  

    if (evt.result.hasOwnProperty("errors"))  

    {   

        //error handling  

    }  

    else  

    {  

        // get right result  

    }  

}  

进一步把错误在Flex中显示出来,可以参考:http://onrails.org/articles/2007/03/06/mapping-rails-errors-to-flex-fields
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: