HttpService工具类:
package common
{
import com.adobe.serialization.json.JSON;
import mx.controls.Alert;
import mx.rpc.AsyncResponder;
import mx.rpc.AsyncToken;
import mx.rpc.events.FaultEvent;
import mx.rpc.http.HTTPService;
public class HttpServices
{
private var http:HTTPService;
private var _host:String;
private static var https:HttpServices;
public function HttpServices()
{
http = new HTTPService();
}
public function set host(value:String):void
{
_host = value;
}
private function sendHttpSer(method:String,local:String,json:String,format:String,contentType:String):AsyncToken
{
_host = "http://192.168.1.146:8080";
local = _host + local;
http.url = local + method;
http.resultFormat = format;
http.method = "POST";
http.showBusyCursor = true;
http.contentType = contentType;
return json.length>0 ? http.send(json) : http.send();
}
public function sendHttpRequest(method:String,
resultFunc:Function,
local:String="/zport/dmd/YDBackScript/asset_handler?callMethod=",
format:String="e4x",
contentType:String="application/x-www-form-urlencoded"):void
{
var token:AsyncToken = sendHttpSer("getAllAssetsClass&submitted=true",local,"",format,contentType);
responderHandler(token,resultFunc);
}
public function sendJsonRequest(method:String,data:Object,resultFunc:Function,local:String="/zport/dmd/kwb_router"):void
{
var o:Object = {};
o.action = "KWBRouter";
o.method = method;
o.data = [data];
o.type = "rpc";
o.tid = 10;
var json:String = JSON.encode(o);
var token:AsyncToken = sendHttpSer("",local,json,"object","application/json; charset=utf-8");
responderHandler(token,resultFunc);
}
private function responderHandler(token:AsyncToken,resultHandler:Function):void
{
var responder:AsyncResponder = new AsyncResponder(resultHandler,faultHandler);
token.addResponder(responder);
}
private function faultHandler(event:FaultEvent,token:Object=null):void
{
// Alert.show("网络服务未能正常访问,请联系管理员解决,:)","错误提示");
trace( "FAULT: " + event.fault.message );
}
public static function getInstance():HttpServices
{
if(!https)https = new HttpServices();
return https;
}
}
}
调用方法:
https.sendHttpRequest("getAllAssetsClass&submitted=true",assetsClass_resultHandler);
private function getJsonData(param:Object,method:String,resultFunc:Function):void
{
var data:Object = {};
data.start = 0;
data.limit = 100;
data.param = param;
data.sort_param = {id:"asc"};
https.sendJsonRequest(method,data,resultFunc);
}
回调函数:
private function assetsClass_resultHandler(e:ResultEvent,token:Object=null):void
{
}
分享到:
相关推荐
简单的 flex HttpService例子,可供初学者参考
Flex HTTPService 如何给后台传递参数 包含实例绝对简单
flex4 httpservice 例子 提取xml数据
本教程旨在演示在帶有ASP.NET的Flex 2+中HTTPService功能的使用。 Adobe Flex中有許多方法可以與ASP.NET(或簡單地說,服務器端語言)進行通信。 HttpService,WebService,WebORB,FluorineFx等。在本教程中,我僅...
flex 和java的通信使用的是httpservice 但当时遇到了不知道如何获取java端的返回值给flex前端 我这个就是为了解决你烦恼而来的 绝对不忽悠你
flex通过Http和WebService与服务器通信交互,交互后台采用java的Struts2做为处理后台.
NULL 博文链接:https://topmanopensource.iteye.com/blog/425794
一个flex 与 java 通过HTTPService 通信的小例子,希望对flex新手有点帮助
flex通过httpService读取xml数据到datagird中,通过读取远程URL的XML数据(这里保存到本地),保存到ArrayCollection中,然后在将ArrayCollection绑定到datagird上 环境:flex3.0 可直接运行
flex 与后台交互 httpservice 实例
FLEX _HTTPService的调用方法 显示数据的例子 QueryDataSet.xml
flex用httpService通信与java后台连接
Flex使用HttpService以键值对的形式发送请求,Java使用Servlet接收Flex请求,再返回数据给Flex客户端。 有文档有例子 包括java 和 flex
Flex 使用HttpService组件发送XML数据与java交互 例子+文档
Flex4_httpService远程调用JAVA。包含源码。jar包,配置。
flex 解析xml文件,利用httpservice读取xml文件,按要求过滤字符串,获取对应的值
这是本人做的Flex4 通过HttpService与Java进行交互项目,本人测试通过。本人在此声明运行环境为:MyEclipse 8.5,JDK 6,Tomcate 6,Flex 4. 本人已经将Flex4整合到Myeclipse 8.5中去了,所以这个项目是在MyEclipse ...
Flex中利用HTTPService MXML标签(tag)将XML转化为对象(objects)
FLEX 数据绑定 Flex HTTPservice使用 Flex 创建自定义事件。 其它入门基础等。
两天在考虑flex与后端java服务交互的问题。在采用BlazeDS的Remote Object方式,还是传统的http service方式之间徘徊了一段时间