AMF3Connection类-使用AMF3数据格式来请求服务端数据
2010-10-11 09:57
405 查看
在Flash中使用AMF3数据格式有什么的好处我就不用重复说了,我主要把把代码贴出来,希望对相关人员有些帮助吧
AMF3Connection类
view plain
copy to clipboard
print
?
package
com.klstudio.net {
import
com.klstudio.events.AMF3ConnectionEvent;
import
flash.events.EventDispatcher;
import
flash.net.URLRequest;
import
flash.net.ObjectEncoding;
import
flash.utils.ByteArray;
import
flash.net.URLLoaderDataFormat;
import
flash.net.URLLoader;
import
flash.events.SecurityErrorEvent;
import
flash.events.IOErrorEvent;
import
flash.events.Event;
import
flash.net.URLRequestMethod;
import
flash.utils.Dictionary;
/**
* amf3连接类
* @author Kinglong
* @mail:kinglong@gmail.com
* @since:2010-5-21
*/
[Event(name="success"
, type="com.klstudio.events.AMF3ConnectionEvent"
)]
[Event(name="failed"
, type="com.klstudio.events.AMF3ConnectionEvent"
)]
public
class
AMF3Connection extends
EventDispatcher{
private
var _url:String;
private
var _requestMethod:String;
private
var _loaders:Dictionary;
private
var _compressed:Boolean;
public
function AMF3Connection(url:String,compressed:Boolean=false
){
_url = url;
_requestMethod = URLRequestMethod.POST;
_loaders = new
Dictionary(true
);
_compressed = compressed;
}
public
function isCompressed():Boolean{
return
_compressed;
}
public
function get requestMethod():String{
return
_requestMethod;
}
public
function set requestMethod(value:String):void
{
_requestMethod = value;
}
public
function get url():String{
return
_url;
}
public
function call(method:String,callback:Function=null
,args:Array=null
):void
{
var request:AMF3Request = new
AMF3Request(method, callback, args);
trace(this
,"request>"
+ request.toString());
var bytes:ByteArray = new
ByteArray();
bytes.writeObject(request.data);
bytes.objectEncoding = ObjectEncoding.AMF3;
if
(_compressed) {
bytes.compress();
}
trace(this
,"url>"
+ url);
var req:URLRequest = new
URLRequest(url + "?r="
+ Math.random());
req.method = requestMethod;
req.data = bytes;
var loader:URLLoader = new
URLLoader();
addLoaderHandler(loader);
loader.load(req);
_loaders[loader] = request;
}
private
function loaderHandler(event:Event):void
{
var loader:URLLoader = event.target as URLLoader;
removeLoaderHandler(loader);
var request:AMF3Request = _loaders[loader];
var response:AMF3Response = new
AMF3Response(request,"没有响应请求"
,AMF3Response.STATE_ERROR);
trace(this
,event.type);
switch
(event.type){
case
Event.COMPLETE:
try
{
var bytes:ByteArray = loader.data as ByteArray;
if
(_compressed) {
bytes.uncompress();
}
response = AMF3Response.parse(request,bytes.readObject());
}catch
(error:Error){
trace(this
,error.message);
response = new
AMF3Response(request,"不能解析返回对象"
,AMF3Response.STATE_ERROR);
}
break
;
case
IOErrorEvent.IO_ERROR:
response = new
AMF3Response(request,"访问地址["
+url+"]出错"
,AMF3Response.STATE_ERROR);
break
;
case
SecurityErrorEvent.SECURITY_ERROR:
response = new
AMF3Response(request,"Flash不能跨域访问"
,AMF3Response.STATE_ERROR);
break
;
}
dispatchEvent(new
AMF3ConnectionEvent(response.isSuccess()?AMF3ConnectionEvent.SUCCESS:AMF3ConnectionEvent.FAILED, response));
if
(request.callback != null
) {
request.callback.call(null
, response);
}
delete _loaders[loader];
loader.close();
loader = null
;
}
private
function addLoaderHandler(loader:URLLoader):void
{
loader.dataFormat = URLLoaderDataFormat.BINARY;
loader.addEventListener(Event.COMPLETE, loaderHandler);
loader.addEventListener(IOErrorEvent.IO_ERROR, loaderHandler);
loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, loaderHandler);
}
private
function removeLoaderHandler(loader:URLLoader):void
{
loader.removeEventListener(Event.COMPLETE, loaderHandler);
loader.removeEventListener(IOErrorEvent.IO_ERROR, loaderHandler);
loader.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, loaderHandler);
}
}
}
AMF3ConnectionEvent类
view plain
copy to clipboard
print
?
package
com.klstudio.events {
import
com.klstudio.net.AMF3Response;
import
flash.events.Event;
/**
* amf3连接事件
* @author Kinglong
* @mail:kinglong@gmail.com
* @web:http://www.klstudio.com
* @since:2010-5-22
*/
public
class
AMF3ConnectionEvent extends
Event {
public
static
const
SUCCESS:String = "success"
;
public
static
const
FAILED:String = "failed"
;
private
var _response:AMF3Response;
public
function AMF3ConnectionEvent(type : String, response:AMF3Response,bubbles:Boolean=false
,cancelable:Boolean=false
) {
super
(type, bubbles, cancelable);
_response = response;
}
public
function get response():AMF3Response{
return
_response;
}
override public
function clone() : Event {
return
new
AMF3ConnectionEvent(type,response,bubbles,cancelable);
}
}
}
AMF3Request类
view plain
copy to clipboard
print
?
package
com.klstudio.net {
/**
* amf3请求类
* @author Kinglong
* @mail:kinglong@gmail.com
* @web:http://www.klstudio.com
* @since:2010-5-21
*/
public
class
AMF3Request {
private
var _method:String;
private
var _callback:Function;
private
var _args:Array;
public
function AMF3Request(method:String,callback:Function=null
,args:Array=null
){
_method = method;
_callback = callback;
_args = args;
}
public
function get method():String{
return
_method;
}
public
function get callback():Function{
return
_callback;
}
public
function get args():Array{
return
_args;
}
public
function get data():Object{
if
(args == null
|| args.length == 0
){
return
{method:method};
}else
{
return
{method:method,args:args};
}
}
public
function toString():String{
return
"AMF3Request[method="
+method+",callback="
+((callback == null
)?"null"
:"Function"
)+",args=["
+args+"]]"
;
}
}
}
AMF3Response类
view plain
copy to clipboard
print
?
package
com.klstudio.net {
/**
* amf3响应类
* @author Kinglong
* @mail:kinglong@gmail.com
* @web:http://www.klstudio.com
* @since:2010-5-22
*/
public
class
AMF3Response {
public
static
const
STATE_SUCCESS:String = "00"
;
public
static
const
STATE_ERROR:String = "99"
;
private
var _message:String;
private
var _result:Object;
private
var _state:String;
private
var _request:AMF3Request;
public
static
function parse(request:AMF3Request,obj:Object):AMF3Response{
if
(obj == null
) return
null
;
if
(!obj.hasOwnProperty("state"
)) return
null
;
if
(!obj.hasOwnProperty("message"
) && !obj.hasOwnProperty("result"
)) return
null
;
var response:AMF3Response;
if
(obj["state"
] == AMF3Response.STATE_SUCCESS){
response = new
AMF3Response(request,obj["result"
]);
}else
{
response = new
AMF3Response(request,obj["message"
],obj["state"
]);
}
return
response;
}
public
function AMF3Response(request:AMF3Request,context:*,state:String="00"
) {
_request = request;
_state = state;
if
(isSuccess()) {
_result = context;
} else
{
_message = context;
}
}
public
function get request():AMF3Request{
return
_request;
}
public
function get message():String{
return
_message;
}
public
function get result():Object{
return
_result;
}
public
function get state():String{
return
_state;
}
public
function isSuccess():Boolean{
return
_state == AMF3Response.STATE_SUCCESS;
}
public
function toString() : String {
return
"AMF3Response[request="
+request+",state="
+state+",message="
+message+",result="
+result+"]"
;
}
}
}
调用实例
view plain
copy to clipboard
print
?
import
com.klstudio.net.AMF3Connection;
import
com.klstudio.net.AMF3Response;
AMF3Connection amf3conn = new
AMF3Connection(url,true
);
function callback(response:AMF3Response){
trace(response);
}
amf3conn.call("checkLogin"
, callback);
AMF3Connection类
view plain
copy to clipboard
?
package
com.klstudio.net {
import
com.klstudio.events.AMF3ConnectionEvent;
import
flash.events.EventDispatcher;
import
flash.net.URLRequest;
import
flash.net.ObjectEncoding;
import
flash.utils.ByteArray;
import
flash.net.URLLoaderDataFormat;
import
flash.net.URLLoader;
import
flash.events.SecurityErrorEvent;
import
flash.events.IOErrorEvent;
import
flash.events.Event;
import
flash.net.URLRequestMethod;
import
flash.utils.Dictionary;
/**
* amf3连接类
* @author Kinglong
* @mail:kinglong@gmail.com
* @since:2010-5-21
*/
[Event(name="success"
, type="com.klstudio.events.AMF3ConnectionEvent"
)]
[Event(name="failed"
, type="com.klstudio.events.AMF3ConnectionEvent"
)]
public
class
AMF3Connection extends
EventDispatcher{
private
var _url:String;
private
var _requestMethod:String;
private
var _loaders:Dictionary;
private
var _compressed:Boolean;
public
function AMF3Connection(url:String,compressed:Boolean=false
){
_url = url;
_requestMethod = URLRequestMethod.POST;
_loaders = new
Dictionary(true
);
_compressed = compressed;
}
public
function isCompressed():Boolean{
return
_compressed;
}
public
function get requestMethod():String{
return
_requestMethod;
}
public
function set requestMethod(value:String):void
{
_requestMethod = value;
}
public
function get url():String{
return
_url;
}
public
function call(method:String,callback:Function=null
,args:Array=null
):void
{
var request:AMF3Request = new
AMF3Request(method, callback, args);
trace(this
,"request>"
+ request.toString());
var bytes:ByteArray = new
ByteArray();
bytes.writeObject(request.data);
bytes.objectEncoding = ObjectEncoding.AMF3;
if
(_compressed) {
bytes.compress();
}
trace(this
,"url>"
+ url);
var req:URLRequest = new
URLRequest(url + "?r="
+ Math.random());
req.method = requestMethod;
req.data = bytes;
var loader:URLLoader = new
URLLoader();
addLoaderHandler(loader);
loader.load(req);
_loaders[loader] = request;
}
private
function loaderHandler(event:Event):void
{
var loader:URLLoader = event.target as URLLoader;
removeLoaderHandler(loader);
var request:AMF3Request = _loaders[loader];
var response:AMF3Response = new
AMF3Response(request,"没有响应请求"
,AMF3Response.STATE_ERROR);
trace(this
,event.type);
switch
(event.type){
case
Event.COMPLETE:
try
{
var bytes:ByteArray = loader.data as ByteArray;
if
(_compressed) {
bytes.uncompress();
}
response = AMF3Response.parse(request,bytes.readObject());
}catch
(error:Error){
trace(this
,error.message);
response = new
AMF3Response(request,"不能解析返回对象"
,AMF3Response.STATE_ERROR);
}
break
;
case
IOErrorEvent.IO_ERROR:
response = new
AMF3Response(request,"访问地址["
+url+"]出错"
,AMF3Response.STATE_ERROR);
break
;
case
SecurityErrorEvent.SECURITY_ERROR:
response = new
AMF3Response(request,"Flash不能跨域访问"
,AMF3Response.STATE_ERROR);
break
;
}
dispatchEvent(new
AMF3ConnectionEvent(response.isSuccess()?AMF3ConnectionEvent.SUCCESS:AMF3ConnectionEvent.FAILED, response));
if
(request.callback != null
) {
request.callback.call(null
, response);
}
delete _loaders[loader];
loader.close();
loader = null
;
}
private
function addLoaderHandler(loader:URLLoader):void
{
loader.dataFormat = URLLoaderDataFormat.BINARY;
loader.addEventListener(Event.COMPLETE, loaderHandler);
loader.addEventListener(IOErrorEvent.IO_ERROR, loaderHandler);
loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, loaderHandler);
}
private
function removeLoaderHandler(loader:URLLoader):void
{
loader.removeEventListener(Event.COMPLETE, loaderHandler);
loader.removeEventListener(IOErrorEvent.IO_ERROR, loaderHandler);
loader.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, loaderHandler);
}
}
}
package com.klstudio.net {<br/> import com.klstudio.events.AMF3ConnectionEvent;<br/> import flash.events.EventDispatcher;<br/> import flash.net.URLRequest;<br/> import flash.net.ObjectEncoding;<br/> import flash.utils.ByteArray;<br/> import flash.net.URLLoaderDataFormat;<br/> import flash.net.URLLoader;<br/> import flash.events.SecurityErrorEvent;<br/> import flash.events.IOErrorEvent;<br/> import flash.events.Event;<br/> import flash.net.URLRequestMethod;<br/> import flash.utils.Dictionary;<br/><br/> /**<br/> * amf3连接类<br/> * @author Kinglong<br/> * @mail:kinglong@gmail.com<br/> * @since:2010-5-21<br/> */<br/> [Event(name="success", type="com.klstudio.events.AMF3ConnectionEvent")]<br/> [Event(name="failed", type="com.klstudio.events.AMF3ConnectionEvent")]<br/> public class AMF3Connection extends EventDispatcher{<br/> private var _url:String;<br/> private var _requestMethod:String;<br/> private var _loaders:Dictionary;<br/> private var _compressed:Boolean;<br/> public function AMF3Connection(url:String,compressed:Boolean=false){<br/> _url = url;<br/> _requestMethod = URLRequestMethod.POST;<br/> _loaders = new Dictionary(true);<br/> _compressed = compressed;<br/> }<br/> <br/> public function isCompressed():Boolean{<br/> return _compressed;<br/> }<br/><br/> public function get requestMethod():String{<br/> return _requestMethod;<br/> }<br/> <br/> public function set requestMethod(value:String):void {<br/> _requestMethod = value;<br/> }<br/><br/> public function get url():String{<br/> return _url;<br/> }<br/> <br/> public function call(method:String,callback:Function=null,args:Array=null):void{<br/> var request:AMF3Request = new AMF3Request(method, callback, args);<br/> trace(this,"request>" + request.toString()); <br/> var bytes:ByteArray = new ByteArray();<br/> bytes.writeObject(request.data);<br/> bytes.objectEncoding = ObjectEncoding.AMF3;<br/> if(_compressed) {<br/> bytes.compress();<br/> }<br/> trace(this,"url>" + url); <br/> var req:URLRequest = new URLRequest(url + "?r=" + Math.random());<br/> req.method = requestMethod;<br/> req.data = bytes; <br/> var loader:URLLoader = new URLLoader();<br/> addLoaderHandler(loader);<br/> loader.load(req); <br/> _loaders[loader] = request;<br/> }<br/> <br/> private function loaderHandler(event:Event):void{<br/> var loader:URLLoader = event.target as URLLoader;<br/> removeLoaderHandler(loader);<br/> var request:AMF3Request = _loaders[loader];<br/> var response:AMF3Response = new AMF3Response(request,"没有响应请求",AMF3Response.STATE_ERROR);<br/> trace(this,event.type);<br/> switch(event.type){<br/> case Event.COMPLETE:<br/> try{<br/> var bytes:ByteArray = loader.data as ByteArray;<br/> if(_compressed) {<br/> bytes.uncompress();<br/> }<br/> response = AMF3Response.parse(request,bytes.readObject()); <br/> }catch(error:Error){<br/> trace(this,error.message);<br/> response = new AMF3Response(request,"不能解析返回对象",AMF3Response.STATE_ERROR);<br/> }<br/> break;<br/> case IOErrorEvent.IO_ERROR:<br/> response = new AMF3Response(request,"访问地址["+url+"]出 错",AMF3Response.STATE_ERROR);<br/> break;<br/> case SecurityErrorEvent.SECURITY_ERROR:<br/> response = new AMF3Response(request,"Flash不能跨域访问",AMF3Response.STATE_ERROR);<br/> break;<br/> }<br/> dispatchEvent(new AMF3ConnectionEvent(response.isSuccess()?AMF3ConnectionEvent.SUCCESS:AMF3ConnectionEvent.FAILED, response));<br/> if(request.callback != null) {<br/> request.callback.call(null, response); <br/> }<br/> delete _loaders[loader];<br/> loader.close();<br/> loader = null;<br/> }<br/> <br/> private function addLoaderHandler(loader:URLLoader):void{<br/> loader.dataFormat = URLLoaderDataFormat.BINARY; <br/> loader.addEventListener(Event.COMPLETE, loaderHandler);<br/> loader.addEventListener(IOErrorEvent.IO_ERROR, loaderHandler);<br/> loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, loaderHandler); <br/> }<br/><br/> private function removeLoaderHandler(loader:URLLoader):void{<br/> loader.removeEventListener(Event.COMPLETE, loaderHandler);<br/> loader.removeEventListener(IOErrorEvent.IO_ERROR, loaderHandler);<br/> loader.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, loaderHandler); <br/> }<br/> }<br/>}<br/><br/>
AMF3ConnectionEvent类
view plain
copy to clipboard
?
package
com.klstudio.events {
import
com.klstudio.net.AMF3Response;
import
flash.events.Event;
/**
* amf3连接事件
* @author Kinglong
* @mail:kinglong@gmail.com
* @web:http://www.klstudio.com
* @since:2010-5-22
*/
public
class
AMF3ConnectionEvent extends
Event {
public
static
const
SUCCESS:String = "success"
;
public
static
const
FAILED:String = "failed"
;
private
var _response:AMF3Response;
public
function AMF3ConnectionEvent(type : String, response:AMF3Response,bubbles:Boolean=false
,cancelable:Boolean=false
) {
super
(type, bubbles, cancelable);
_response = response;
}
public
function get response():AMF3Response{
return
_response;
}
override public
function clone() : Event {
return
new
AMF3ConnectionEvent(type,response,bubbles,cancelable);
}
}
}
package com.klstudio.events {<br/> import com.klstudio.net.AMF3Response;<br/> import flash.events.Event;<br/><br/> /**<br/> * amf3连接事件<br/> * @author Kinglong<br/> * @mail:kinglong@gmail.com<br/> * @web:http://www.klstudio.com<br/> * @since:2010-5-22<br/> */ <br/><br/> public class AMF3ConnectionEvent extends Event {<br/> public static const SUCCESS:String = "success";<br/> public static const FAILED:String = "failed";<br/> <br/> private var _response:AMF3Response;<br/> public function AMF3ConnectionEvent(type : String, response:AMF3Response,bubbles:Boolean=false,cancelable:Boolean=false) {<br/> super(type, bubbles, cancelable);<br/> _response = response;<br/> }<br/> <br/> public function get response():AMF3Response{<br/> return _response;<br/> }<br/><br/> <br/> override public function clone() : Event {<br/> return new AMF3ConnectionEvent(type,response,bubbles,cancelable);<br/> }<br/> }<br/>}<br/><br/>
AMF3Request类
view plain
copy to clipboard
?
package
com.klstudio.net {
/**
* amf3请求类
* @author Kinglong
* @mail:kinglong@gmail.com
* @web:http://www.klstudio.com
* @since:2010-5-21
*/
public
class
AMF3Request {
private
var _method:String;
private
var _callback:Function;
private
var _args:Array;
public
function AMF3Request(method:String,callback:Function=null
,args:Array=null
){
_method = method;
_callback = callback;
_args = args;
}
public
function get method():String{
return
_method;
}
public
function get callback():Function{
return
_callback;
}
public
function get args():Array{
return
_args;
}
public
function get data():Object{
if
(args == null
|| args.length == 0
){
return
{method:method};
}else
{
return
{method:method,args:args};
}
}
public
function toString():String{
return
"AMF3Request[method="
+method+",callback="
+((callback == null
)?"null"
:"Function"
)+",args=["
+args+"]]"
;
}
}
}
package com.klstudio.net {<br/><br/> /**<br/> * amf3请求类<br/> * @author Kinglong<br/> * @mail:kinglong@gmail.com<br/> * @web:http://www.klstudio.com<br/> * @since:2010-5-21<br/> */ <br/> public class AMF3Request {<br/> private var _method:String;<br/> private var _callback:Function;<br/> private var _args:Array;<br/> <br/> public function AMF3Request(method:String,callback:Function=null,args:Array=null){<br/> _method = method;<br/> _callback = callback;<br/> _args = args;<br/> }<br/> <br/> public function get method():String{<br/> return _method;<br/> }<br/> <br/> public function get callback():Function{<br/> return _callback;<br/> }<br/> <br/> public function get args():Array{<br/> return _args;<br/> }<br/> <br/> public function get data():Object{<br/> if(args == null || args.length == 0){<br/> return {method:method};<br/> }else{<br/> return {method:method,args:args}; <br/> }<br/> }<br/> <br/> public function toString():String{<br/> return "AMF3Request[method="+method+",callback="+((callback == null)?"null":"Function")+",args=["+args+"]]";<br/> }<br/> }<br/>}<br/>
AMF3Response类
view plain
copy to clipboard
?
package
com.klstudio.net {
/**
* amf3响应类
* @author Kinglong
* @mail:kinglong@gmail.com
* @web:http://www.klstudio.com
* @since:2010-5-22
*/
public
class
AMF3Response {
public
static
const
STATE_SUCCESS:String = "00"
;
public
static
const
STATE_ERROR:String = "99"
;
private
var _message:String;
private
var _result:Object;
private
var _state:String;
private
var _request:AMF3Request;
public
static
function parse(request:AMF3Request,obj:Object):AMF3Response{
if
(obj == null
) return
null
;
if
(!obj.hasOwnProperty("state"
)) return
null
;
if
(!obj.hasOwnProperty("message"
) && !obj.hasOwnProperty("result"
)) return
null
;
var response:AMF3Response;
if
(obj["state"
] == AMF3Response.STATE_SUCCESS){
response = new
AMF3Response(request,obj["result"
]);
}else
{
response = new
AMF3Response(request,obj["message"
],obj["state"
]);
}
return
response;
}
public
function AMF3Response(request:AMF3Request,context:*,state:String="00"
) {
_request = request;
_state = state;
if
(isSuccess()) {
_result = context;
} else
{
_message = context;
}
}
public
function get request():AMF3Request{
return
_request;
}
public
function get message():String{
return
_message;
}
public
function get result():Object{
return
_result;
}
public
function get state():String{
return
_state;
}
public
function isSuccess():Boolean{
return
_state == AMF3Response.STATE_SUCCESS;
}
public
function toString() : String {
return
"AMF3Response[request="
+request+",state="
+state+",message="
+message+",result="
+result+"]"
;
}
}
}
package com.klstudio.net {<br/><br/> /**<br/> * amf3响应类<br/> * @author Kinglong<br/> * @mail:kinglong@gmail.com<br/> * @web:http://www.klstudio.com<br/> * @since:2010-5-22<br/> */ <br/><br/> public class AMF3Response {<br/> <br/> public static const STATE_SUCCESS:String = "00";<br/> public static const STATE_ERROR:String = "99";<br/> <br/> private var _message:String;<br/> private var _result:Object;<br/> private var _state:String;<br/> private var _request:AMF3Request;<br/> <br/> public static function parse(request:AMF3Request,obj:Object):AMF3Response{<br/> if(obj == null) return null;<br/> if(!obj.hasOwnProperty("state")) return null;<br/> if(!obj.hasOwnProperty("message") && !obj.hasOwnProperty("result")) return null;<br/> var response:AMF3Response; <br/> if(obj["state"] == AMF3Response.STATE_SUCCESS){<br/> response = new AMF3Response(request,obj["result"]);<br/> }else{<br/> response = new AMF3Response(request,obj["message"],obj["state"]);<br/> }<br/> return response;<br/> }<br/> <br/> public function AMF3Response(request:AMF3Request,context:*,state:String="00") {<br/> _request = request;<br/> _state = state;<br/> if(isSuccess()) {<br/> _result = context;<br/> } else {<br/> _message = context;<br/> }<br/> }<br/> <br/> public function get request():AMF3Request{<br/> return _request;<br/> }<br/><br/> public function get message():String{<br/> return _message;<br/> }<br/> <br/> public function get result():Object{<br/> return _result;<br/> }<br/> <br/> public function get state():String{<br/> return _state;<br/> }<br/><br/> public function isSuccess():Boolean{<br/> return _state == AMF3Response.STATE_SUCCESS;<br/> }<br/> <br/> public function toString() : String {<br/> return "AMF3Response[request="+request+",state="+state+",message="+message+",result="+result+"]";<br/> }<br/> }<br/>}<br/><br/>
调用实例
view plain
copy to clipboard
?
import
com.klstudio.net.AMF3Connection;
import
com.klstudio.net.AMF3Response;
AMF3Connection amf3conn = new
AMF3Connection(url,true
);
function callback(response:AMF3Response){
trace(response);
}
amf3conn.call("checkLogin"
, callback);
相关文章推荐
- android菜鸟学习笔记24----与服务器端交互(一)使用HttpURLConnection和HttpClient请求服务端数据
- Android访问网络:服务端返回XML或JSON格式数据,Android 进行解析并使用ListView显示
- SpringMVC中使用Ajax POST请求以json格式传递参数服务端通过request.getParameter("name")无法获取参数值问题分析
- 使用jQuery发送POST,Ajax请求返回JSON格式数据
- android菜鸟学习笔记25----与服务器端交互(二)解析服务端返回的json数据及使用一个开源组件请求服务端数据
- http协议 使用httpserver组件完成server(服务端)接受post请求数据并使用3DES+base64加解密希望对大家有帮助
- AFNetworking框架的基本使用——GET、POST登录 、设置请求与响应的数据格式
- 使用Ajax发送Struts2请求返回JSON数据格式
- SpringMVC中使用Ajax POST请求以json格式传递参数服务端通过request.getParameter("name")无法获取参数值问题分析
- 使用JSON格式提交数据到服务端的实例代码
- PHP之文件操作,http请求数据格式,模拟get和post,CURL模拟请求的使用
- 在ajax请求中使用json数据格式
- JSON(四)——异步请求中前后端使用Json格式的数据进行交互
- 使用getJSON()异步请求服务器返回json格式数据的实现
- 在 Angular6 中使用 HTTP 请求服务端数据的步骤详解
- 使用getJSON()异步请求服务器返回json格式数据
- 跨域请求jsonp格式的数据 回调函数的使用
- PHP 使用curl库来发送GET,POST请求,处理json格式数据
- 【原创】Loadrunner使用json格式请求数据并参数化
- 使用JMeter进行一次简单的带json数据的post请求测试,json可配置参数