所谓grails写的api即为如下的风格:
http://localhost:8080/ZheLe/API/latestZheItem 返回JSON格式
http://localhost:8080/ZheLe/API/latestZheItem?type=1 返回JSON格式
http://localhost:8080/ZheLe/API/latestZheItem?type=2 返回XML格式
通过render as XML 或者 render as JSON。这样做的好处是可以让flex的httpservice访问到并解析xml,甚至让手机客户端也能调用。
刚开始时,
url包含&符合,httpservice会报错,于是重新设计api,改用其他符号,这样就不报错了。
这也许不是最佳方案,但是目前可行,如果有更好的办法,以后会考虑替换。以下一段代码是范例:
/**
* 用户登陆的API,需要输入的两个参数是userName、password
* 输入userName、password的情况例如:http://localhost:8080/ZheLe/API/login/test?password=test 返回JSON格式
* 输入userName、password、type的情况例如:http://localhost:8080/ZheLe/API/login/test?password=test/1 返回JSON格式
* 输入userName、password、type的情况例如:http://localhost:8080/ZheLe/API/login/test?password=test/2 返回XML格式
*/
def login = {
def userName = params.id
def str = params.password
def strs = str.split("/")
def password = null
def type = null
if (strs.length == 2) {
password = strs[0]
type = strs[1]
} else {
password = strs[0]
}
def user = User.findWhere(userName:userName,password:password)
if (user) {
if("1".equals(type) || type == null || "".equals(type)) {
render user as JSON
}
else if ("2".equals(type)) {
render (contentType:"text/xml",encoding:"UTF-8") {
list {
UserName(user.userName)
Password(user.password)
Email(user.email)
City(user.city)
Attentions(user.attentions)
}
}
}
else
render(text:"<xml><user>type参数没有设置正确</user></xml>",contentType:"text/xml",encoding:"UTF-8")
}
else
render(text:"<xml><user>not found user</user></xml>",contentType:"text/xml",encoding:"UTF-8")
}
分享到:
相关推荐
7. **HTTPServiceTest**:根据压缩包中的文件名,我们可以推测这个例子可能包含了一个简单的HTTPService测试应用。解压后,查看源代码能更深入地理解如何在实际项目中应用这些概念。 这个例子对于初学者来说非常...
这是一个Flex应用程序,使用_HTTPService组件从服务器获取上述XML文件中的数据,并显示在DataGrid中。 ```mxml ();"> <mx:HTTPService id="chk" url="QueryDataSet.xml" result="productServiceResultHandler...
首先,我们需要在MXML文件中创建一个`HTTPService`实例,指定其URL和方法类型(GET或POST): ```xml <s:HTTPService id="httpService" url="http://example.com/service.xml" method="GET"> </s:HTTPService> ...
3. **远程调用Java服务**:Flex应用可以通过HTTPService调用Java Web服务(如SOAP、RESTful API等)。Java服务通常部署在Web服务器上,如Tomcat、Jetty等,处理Flex发送的请求并返回数据。 4. **配置过程**:在Flex...
- 异步请求完成后,通常需要一个结果处理函数来接收服务器返回的数据。在示例中,`resultHandler`函数展示了如何展示返回的数据或执行其他操作。 ### 结论 Flex中的HTTPService组件提供了灵活的方式与后台进行数据...
2. 创建HTTPService实例:在MXML中声明并实例化一个HTTPService对象,设置其`url`属性指向服务器端处理请求的URL,以及`method`属性(GET或POST)。 ```xml <mx:HTTPService id="httpService" url=...
- **连接Grails后端**:使用HTTPService或者AMFChannel(对于更高效的数据传输)在Flex中调用Grails的REST API。 - **测试和调试**:通过浏览器和Flex模拟器进行应用测试,确保前后端数据交互正常,修复可能出现的...
1、HttpService.dll是一个用于http/https协议访问网络获取数据的链接库,该链接库封装了C#的HttpWebRequest用于请求数据的Get和Post的操作方式,直接输入一个网址即可实现获取对应网页的源码,为网络编程中必不可少...
httpservice post get传数据
HTTPService组件是Flex提供的一个用于与远程服务器进行HTTP通信的工具,它支持SOAP、RESTful等数据交换格式。而Java是一种广泛使用的后端编程语言,能够处理业务逻辑并提供Web服务。 1. **配置HTTPService** 在...
在IT行业中,尤其是在Java或Android开发中,"将HttpService结果返回给控件"是一个常见的需求,涉及到网络请求、数据处理以及UI更新等关键环节。这里我们将深入探讨这个主题,并结合给定的"roomList.xml"文件名,推测...
简单的 flex HttpService例子,可供初学者参考
.net 下用asp.net实现的HttpService例子; HttpService的部署方式跟网站的部署方式一样; 运行HttpClient前注意先配置下配置文件,Url为HttpService的地址
在Java开发中,Flex HttpService是一个强大的工具,用于在Adobe Flex客户端与服务器之间进行数据通信。这个服务允许Flex应用程序通过HTTP协议发送请求到后端服务器,并接收响应数据。本篇文章将深入探讨如何在Java...
在 Flex 开发中,HTTPService 是一个非常重要的组件,它允许我们从远程服务器获取数据,这些数据可以是 XML、JSON 或其他格式。本教程将详细解释如何使用 MXML 标签来配置 HTTPService,并将接收到的 XML 数据转换为...
压缩包中的"HTTPServiceStu"文件可能包含一个实际的Flex项目,演示了如何配置和使用HTTPService,以及处理返回数据的完整流程。通过研究这个示例,你可以更直观地理解HTTPService的工作原理和使用方法。 总结来说,...
标题“HttpService_pb12.5”暗示我们正在讨论一个与PowerBuilder 12.5相关的HTTP服务组件或库。PowerBuilder(PB)是Sybase(现为SAP的一部分)开发的一种面向对象的编程环境,主要用于构建桌面和Web应用程序。在PB...
在开发富互联网应用程序(RIA)时,Flex作为一个强大的前端框架,常常需要与后端服务器进行数据交换以实现功能。本文将深入探讨Flex与后台交互的三种主要方法:HTTPService、WebService和URLLoader,并重点关注基于...
1. **创建HTTPService实例**:在Flex代码中,首先需要创建一个HTTPService对象。你可以通过MXML或者ActionScript来创建。例如,在MXML中,可以这样写: ```xml <mx:HTTPService id="httpService" url=...
在这个例子中,我们创建了一个HTTPService实例,设置了URL和method,然后添加了一个结果事件监听器。在`handleResult`函数中,我们把返回的XML字符串转换为XML对象,使用XPath表达式或属性访问语法筛选出需要的节点...