- 浏览: 282765 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
xisuchi:
咋没人收藏阿
前端开发大众手册(包括工具、网址、经验等) -
past2010yeah:
太好了,解决了我纠结很久的问题!!!非常感谢!
解决Flex跨域"访问URL时遇到安全性错误" -
shlei:
xiao_kai 写道这样会不会牺牲性能啊~~会,但是这是暂时 ...
解决flex4 spark 找不到外观错误 -
xiao_kai:
这样会不会牺牲性能啊~~
解决flex4 spark 找不到外观错误 -
jcl860:
兄台:左边面板是图片,还是用mxml画出来的图形?
仿IBM-BPM Editor实现的WorkFlowEditor
以下是一个AMF调用类:
调用方法:
回调函数:
package common { import flash.events.Event; import flash.events.EventDispatcher; import flash.utils.ByteArray; import flash.utils.Dictionary; import mx.controls.Alert; import mx.core.FlexGlobals; import mx.messaging.ChannelSet; import mx.messaging.channels.AMFChannel; import mx.rpc.AsyncToken; import mx.rpc.events.FaultEvent; import mx.rpc.events.ResultEvent; import mx.rpc.remoting.RemoteObject; public class SimpleAmf { public function SimpleAmf(v:SingletonTemp,sourceData:String,url:String=null ){ _dispatcher = new EventDispatcher(); _service = new mx.rpc.remoting.RemoteObject(); _nonPollingChannelSet = new mx.messaging.ChannelSet(); _pendingOperations = new flash.utils.Dictionary(); _cachedOperations = new Array(); _serviceUrl = url; _sourceData = sourceData; initChannels(); _service.addEventListener(mx.rpc.events.FaultEvent.FAULT, serviceFaultHandler); } /** * destination初始化 */ protected function initChannels():void{ _service.requestTimeout = _requestTimeout; _service.source = _sourceData;//"ssoc.AssetService"; _service.destination = "amfphp"; _service.source= _sourceData; _service.endpoint = _serviceUrl; } /** * SimpleAmf单例模式 * */ public static function instance(source:String,url:String=null):SimpleAmf{ if ( url == null ){ url = FlexGlobals.topLevelApplication._host;//要传入的gateway从全局变量中取,如:http://192.168.1.146/ssoc/phpserver/gateway.php } var key:String = url + "/" + source; //md5.hash( _binKey ).toString(); if( null == _instanceHash[key] ){ var server:SimpleAmf = new SimpleAmf(new SingletonTemp(),source,url); _instanceHash[key] = server;//把调用的后台接口类存入数组,这样第二次就可直接调用了 } return _instanceHash[key]; } /** * * @param Operation * @param eventType * @param arguments * @param bRecallOnError * */ protected function startRemoteOperation(Operation:String, eventType:String, arguments:Object,callback:Function=null, bRecallOnError:Boolean=true):void{ var requestData:AmfRequestData = new AmfRequestData(eventType); requestData.operation = _service.getOperation(Operation); requestData.callback = callback; requestData.recallOnError = bRecallOnError; requestData.operation.arguments = arguments; requestData.token = requestData.operation.send(); _pendingOperations[requestData.token] = requestData; return; } /** * * @param token * @param arg2 * @return * */ protected function finishRemoteOperation(token:mx.rpc.AsyncToken, arg2:Boolean=true):AmfRequestData{ var requestData:*; requestData = this._pendingOperations[token] as AmfRequestData; if (requestData == null) { return null; } delete _pendingOperations[token]; return requestData; } /** * callback(success:Boolean,response:Object,arguments:Object) * @success 是否调用城功 * @response 返回的数据 * @arguments 传入的调用参数 * */ private function onDefaultGetHandler(resultEvent:mx.rpc.events.ResultEvent):void{ var requestData:AmfRequestData = finishRemoteOperation(resultEvent.token); if ( requestData.callback != null ){ requestData.callback(true,resultEvent.result,requestData.operation.arguments); } } /** * 异常处理 */ private function serviceFaultHandler(event:FaultEvent):void{ var requestData:AmfRequestData = finishRemoteOperation(event.token); if ( requestData.callback != null ){ requestData.callback(false,event.fault.faultString,requestData.operation.arguments); } } /** * 请求调用函数 */ public function request( operation:String, arguments:Object,callback:Function=null, eventType:String=null ):void{ _service.getOperation(operation).addEventListener(mx.rpc.events.ResultEvent.RESULT, onDefaultGetHandler); startRemoteOperation( operation, eventType , arguments,callback ); } protected var _pendingOperations:flash.utils.Dictionary; protected var _service:mx.rpc.remoting.RemoteObject; protected var _requestTimeout:int=120; protected var _dispatcher:EventDispatcher; protected var _cachedOperations:Array; protected var _nonPollingChannelSet:mx.messaging.ChannelSet; private var _serviceUrl:String=null; private var _sourceData:String=null; private static var _instanceHash:Dictionary = new Dictionary(); } } class AmfRequestData{ public function AmfRequestData(_eventType:String=null){ eventType = _eventType; return; } public var callback:Function=null; public var eventType:String=null; public var operation:mx.rpc.AbstractOperation=null; public var recallOnError:Boolean=false; public var token:mx.rpc.AsyncToken=null; } class SingletonTemp{};
调用方法:
/** * @SsocService 后台接口调用类 * @getp_asset_eventCount 调用接口 * @[bTime,eTime,"I",ip]调用接口传入参数,必须放到数组中 * @getp_asset_eventCountHandler 回调函数名 */ SimpleAmf.instance("SsocService").request("getp_asset_eventCount",[bTime,eTime,"I",ip],getp_asset_eventCountHandler);
回调函数:
/** * callback(success:Boolean,response:Object,arguments:Object) * @success 是否调用城功 * @response 返回的数据 * @arguments 传入的调用参数 * */ private function getp_asset_eventCountHandler(success:Boolean,response:Object,arguments:Object):void { }
发表评论
-
Flex4之皮肤定制【Skin类和Skin类】
2013-10-05 19:19 1108第一、关于spark.skin.SparkSkin类的 ... -
基于 Cairngorm MVC 框架的 Flex 程序设计与开发
2013-10-05 18:38 928翟 峰, 开发工程师, IBM 吴 镝, IBM 实习生, I ... -
flex 4.5 simple spark button skinning
2013-09-24 22:09 1142Anyone missed the old simple me ... -
swf复制到其他文件夹出现安全错误的解决办法
2012-08-16 10:06 1180相信用Flash Builder/Flex Builder做开 ... -
在flex中使用model标签读取配置文件的方法
2012-08-16 09:54 9561.使用 Model标签 <mx:Model id=& ... -
Flex利用渲染器动态修改tree的icon图标
2012-08-16 09:50 1743Tree: <mx:Tree dataProvide ... -
flex xml操作
2012-04-25 10:48 1118今天我们来看看AS3中新的XML处理方法:E4X,直到现在,E ... -
Flex 创建过滤特定文件的FileReference
2012-03-01 16:13 1612下面的代码演示了Flex中如何创建一个可以过滤特定后缀文件的F ... -
Flex 根据图片url获取bitmapdata并绑定到多个Image
2012-03-01 14:40 3017private function getImage(url ... -
Flex 开始日期与结束日期DateField组件
2012-03-01 13:45 1786<?xml version="1.0&qu ... -
匹配已选中数据的某字段和下拉框数据
2012-03-01 08:41 1269package YD.Web.Common.Utils ... -
解决flex4 spark 找不到外观错误
2012-02-27 14:01 1851spark组件为了提高性能adobe做了很多努力,同 ... -
Flex垃圾回收和性能优化的一些总结
2012-02-27 11:30 1182本文是Kenshin根据一些对 ... -
【转】关于Flex未来走向的问答
2011-11-22 09:50 1703•转自:http://www.riadev.com/flex- ... -
Flex 关于validateNow方法
2011-11-18 10:42 2247validateNow(); 官方解释:验证并更新此对 ... -
Flex 数值转IP
2011-11-18 10:19 879package common { public cl ... -
Flex 关于遍历
2011-11-18 10:15 1002获取XML属性名、值 var x : XML = < ... -
Flash Builder编译的swf为什么在bin-debug下运行正常,复制到其他文件夹就不正常?
2011-11-08 16:54 1579相信用Flash Builder/Flex Bui ... -
Flex HttpService重用2
2011-09-28 13:30 1175HttpService工具类: package commo ... -
Unix时间戳转化AS3日期格式
2011-09-21 16:14 2247Unix时间戳:1254671828 返回:2009-10-1 ...
相关推荐
欢迎使用 JavaScript 后台管理框架 - AMF AMF-可应用于网站后台、系统管理等领域。 01) 兼容: 天衣无缝的兼容性能,可完美运行于IE5.5\6 *、Firefox x 、Chrome x 、Safari x 、Opera x 等浏览器。 02) 快速: 基于...
欢迎使用 JavaScript 后台管理框架 - AMF AMF-可应用于网站后台、系统管理等领域。 01) 兼容: 天衣无缝的兼容性能,可完美运行于IE5.5\6+*、Firefox x+、Chrome x+、Safari x+、Opera x+等浏览器。 02) 快速...
调用例子: $amf = new AMFObject($data); //$data为AMF数据 $deserializer = new AMFDeserializer($amf->rawData); $deserializer->deserialize($amf); $AMF = $deserializer->getAMFObject(); //解码结果
《如何在Android中解析AMF 》一文的源代码
AMF-可应用于网站后台、系统管理等领域。 01) 兼容: 天衣无缝的兼容性能,可完美运行于IE5.5\6+*、Firefox X+、Chrome X+、Safari X+、Opera X+等浏览器。 02) 快速: 基于JavaScript原生态开发,运行快速高效、...
AMF开源FluorineFx文件太大 对于只需要序列化和反序列化AMF数据流的朋友,这个库是不错的选择 支持.net 1.1和2.0+
支持AMF格式的通信封包编码、解码、向AMF服务端发送请求、返回AMF数据解析。 支持RTMP封包编码、解码。 支持Flex外部化类的AMF编码、解码。 支持解压还原LZMA算法压缩过的SWF文件(文件头三字节为:ZWS的 *.SWF...
《RTMP协议中AMF的定义》,原名《TheAMF》英文版本。 内容简介: The AMF object is used for the sending and receiving of all video/audio data. After the initial handshake, all objects sent use the AMF ...
易语言amf解析构造源码,amf解析构造,分析amf,取短整数_字节集,时间到双精度,到时间_双精度,取整数_字节集,integer_字节集,取双精度_字节集,amf3型数据,十六进制转字节集,分析数据段,解析amf数据,解析amf3数据,Utf8转...
AMF1.0(AMP).zip 代码
amf0 原版文档 完整版
AMF3 C++ AMF3 C++ 源码库码库
AMF源码 AMF源码欢迎下载
Advanced Media Framework AMF AMD Radeon硬件编码ffmpeg编译库源码 The AMF framework is compatible with most recent Radeon GPUs starting with the Southern Islands family and APUs of the Kabini, Kaveri, ...
用于分析AMF数据分析的工具,使用简单方便,帮助提高AMF分析效率
用于 分析 解析amf数据包,以便开发或修改接口,具体请看工具提示
易语言源码易语言amf解析构造源码.rar 易语言源码易语言amf解析构造源码.rar 易语言源码易语言amf解析构造源码.rar 易语言源码易语言amf解析构造源码.rar 易语言源码易语言amf解析构造源码.rar 易语言源码...
DartAmf 使用 AMF 为 BlazeDS 后端提供了原生 Dart 接口。 它使用 dart:html HttpRequest 所以它可以在浏览器中工作,但不太可能在没有修改的情况下从命令行工作。 很大程度上基于修改后的 2.0 许可证),它基于 ...
AMF类网页游戏的分析,用于数据抓包等 。AMF手把手教程。分析网页游戏的第一步。