最正规的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 代码
-
- public function onResult(evt:ResultEvent):void
- {
- if (evt.result.hasOwnProperty("errors"))
- {
-
- }
- else
- {
-
- }
- }
进一步把错误在Flex中显示出来,可以参考:
http://onrails.org/articles/2007/03/06/mapping-rails-errors-to-flex-fields
分享到:
相关推荐
Flex是Adobe公司开发的一种富...通过实践,你可以掌握HTTPService的配置、请求参数设置、响应处理等关键技能,为今后的Flex开发打下坚实基础。记住,理论学习的同时,一定要多动手实践,才能真正理解并掌握这些技术。
在ActionScript代码中定义`handleResult`和`handleFault`函数,以解析XML数据和处理错误: ```actionscript private function handleResult(event:ResultEvent):void { var xmlData:XML = XML(event.result); ...
httpservice post get传数据
简单的 flex HttpService例子,可供初学者参考
- 在`fault`事件处理器中处理可能出现的错误,如网络异常、服务器返回的错误代码等。 7. **安全与性能优化** - 考虑使用HTTPS进行加密通信,以提高安全性。 - 适当调整BlazeDS配置,如连接池大小,以应对高并发...
.net 下用asp.net实现的HttpService例子; HttpService的部署方式跟网站的部署方式一样; 运行HttpClient前注意先配置下配置文件,Url为HttpService的地址
4. **处理错误** 除了`result`事件外,还需要监听`fault`事件以处理可能出现的错误: ```xml <mx:HTTPService id="javaService" fault="handleFault(event)" ... /> ``` 5. **Java端的处理** 在Java端,你...
2. 创建HTTPService实例:在MXML中声明并实例化一个HTTPService对象,设置其`url`属性指向服务器端处理请求的URL,以及`method`属性(GET或POST)。 ```xml <mx:HTTPService id="httpService" url=...
10. **错误处理**:在Flex应用中,需要对HTTPService的错误进行捕获和处理,以提供良好的用户体验。这包括网络中断、服务器错误、数据格式异常等情况。 综上所述,Flex4_httpService项目涵盖了Flex 4与Java Web服务...
在IT行业中,尤其是在Java或Android开发中,"将HttpService结果返回给控件"是一个常见的需求,涉及到网络请求、数据处理以及UI更新等关键环节。这里我们将深入探讨这个主题,并结合给定的"roomList.xml"文件名,推测...
Flex是Adobe开发的一种富互联网应用程序(RIA)框架,主要用于创建交互性强、用户体验良好的Web应用。...在实际开发中,还需考虑错误处理、安全性以及性能优化等多方面问题,以提供稳定、高效的Web服务。
2、链接库里的HttpService类即为用于获取源码的相关操作的类,获取时相关的函数还考虑到了自动跳转(Head头的Location)、简单的Head里面的或是里的的跳转,链接库都可以实现跳转到最终所需的页面来获取源码 ...
这种方法适用于GET和POST请求,但通常在POST请求中更为常见,因为它可以处理更复杂的数据结构。以下是如何使用URLVariables传递参数的步骤: 1. **创建URLVariables对象**: ```actionscript var params:...
同时,当请求失败时,`serv_fault` 函数会被调用,处理错误信息: ```actionscript private function serv_fault(evt:FaultEvent):void { error.text += evt.fault.faultString; error.visible = true; form....
ionic-angular封装网络请求, httpService.ts,封装post,get,基于angular HttpClient
当请求失败时,`fault`事件会被触发,可以捕获并处理错误: ```actionscript private function handleFault(event:FaultEvent):void { trace("Error: " + event.fault.message); } ``` 六、HTTPService的高级特性...
- **错误处理**:如果发生错误,`fault`事件会被触发,通过`event.fault`获取错误信息。 6. **示例代码** ```mxml <mx:HTTPService id="httpService" url=...
在实际应用中,你可能还需要处理可能出现的错误,如网络问题或服务器返回的数据格式不正确等。可以通过监听fault事件来实现这一点: ```actionscript xmlService.addEventListener(mx.rpc.events.FaultEvent.FAULT,...
flex通过httpService读取xml数据到datagird中,通过读取远程URL的XML数据(这里保存到本地),保存到ArrayCollection中,然后在将ArrayCollection绑定到datagird上 环境:flex3.0 可直接运行
与URLLoader相比,HTTPService提供了更多的控制和错误处理能力,适合于复杂的Web服务交互。 三、Socket Socket通信提供了一种低级的、双向的、基于TCP/IP的通信方式。在Flex和Java之间,Socket允许大量数据的高效...