Flex数据交互方法- httpservice, webservice, RemoteObject, socket.

写在前面:

使用SOAP Web Service同Flex交互有很多好处,但是它很慢, 使用定制化XML好一点,却不标准化.

那么最好的ASP.Net 和flex交互方法是什么?

1. HTTPService 实际上应该叫做XML via HTTPService, 就是用get和post方式进行数据传输,同平常的web form提交大致一 样.好处就是很简单,通用性高. 不管你用asp,jsp, 还是XXP, 任何可以生成标准XML的程序都可以和你的Flex程序进行交互. 处理大量数据时, 速度慢, 下面是个简单的例子:

登录 http://www.helloria.com/showtopic.aspx?topicid=37&forumpage=1&page=1#53

2. WebService 通用的叫做SOAP, 用datatable返回数据, 没有内建的Paging功能.不直接返回dataset. 并且大型数据交互速度慢.但,它是比较通用的接口, 大多服务器通信都支持, 不过服务器端实现起来比较复杂.

3. Remoting 基于AMF的数据交互, 速度以及性能是最好的. 支持dataset和datatable, 以及OR mapping工具. Fast, reliable and secure, 需要一个Flex Remoting Gateway来做数据de/seralization.

优点:

1).传输数据类型比较丰富。

2).可以支持AMF0,AMF3两种数据封装类型,AMF3是Flash Player 9或更高级才能支持,有了AMF3,可以直接传送二进制文件流数据。

3).传输效率相对比较高。

4).对各种后台的支持也比较好。

FDS(LCDS) - 是Adobe主推的FlashRemoting服务端,功能强大(当然也支持AMF0,AMF3格式, java和net平台都支持),质量也不错,可惜这个是需要银子的。

Blazeds - 是Adobe另外一个开源的FlashRemoting项目,基于Java平台的,支持AMF0,AMF3格式

Amfphp - 一种基于PHP的RPC工具,支持FlashRemoting中AMF0和AMF3两种格式,开源项目。

Openamf - 一种基于Java的FlashRemoting开源项目,目前只支持AMF0格式。

GDS(Granite Data Services) - 也是一个基于Java平台的FlashRemoting项目,支持AMF3的。

WebORB - 一个支持.net,java,php,ruby等开发平台的FlashRemoting项目,也支持AMF0和AMF3。

FluorineFx - 一个支持.net开发平台的FlashRemoting开源项目, AMF0, AMF3 ,RTMP, RTMPT 。

缺点:

1).需要后台服务端装相应版本的Flash Remoting模块才可以使用。

2).如果使用虚拟主机的话配置起来比较麻烦。

4. Socket: 没什么说的,基于socket通讯的,这也是flash和传统web开发中,通讯方式最不同的地方,socket可以建立持久连接,因此可以用来做网游,多人聊天,视频等应用。

什么是AMF? AMF0, AMF3 做Flex RIA交互的都知道有3种数据交互方式, HttpService, WebService 和remoting.

大家又公认Remoting是最有效率的方法!

那么Remoting为什么会更有效率呢, 这就涉及到数据封装格式.

AMF是Adobe独家开发的数据封装格式, AMF(Action Message Format) binary format. Remoting传输这种压缩的数据格式, 而且传输的的数据还包括ByteArray等多种形态( 參考AMF3 Specification).

Flash可以直接访问, 并且由于它是基于二进制的数据传输,所以相对于xml SOAP、json、webService等基于字符串的数据格式,有数据体积小和效率高的特点。

AMF目前有AMF0和AMF3两种格式,AMF随着ActionScript3的问世,直接从AMF0升级到AMF3.  Flash8以前版本只支持AMF0,flash9支持两种格式。AMF3比AMF0效率更高。

flex数据交互方式 转的更多相关文章

  1. Flex数据交互之Remoting

    一 前言 Flex数据交互常用的有三种方式:WebService.HttpService以及Remoting. WebService方式已在这篇文章中给出,这篇文章主要讲解以Remoting方式进行数 ...

  2. Flex数据交互之WebService

    In this article you will learn how to call webservices hosted on asp.net applications from flex. Fir ...

  3. Flex数据交互之Remoting[转]

    Flex数据交互之Remoting 一 前言 Flex数据交互常用的有三种方式:WebService.HttpService以及Remoting. WebService方式已在这篇文章中给出,这篇文章 ...

  4. 面对对象之差异化的网络数据交互方式--单机游戏开发之无缝切换到C/S模式

    上一篇这里描写叙述了一个关于差异数据在开发过程中的一个长处,这里来演示另外一个特点:单机开发之无缝切换到C/S模式 一般C/S模式都面临一个问题: 就是开发过程中的调试难题,由于涉及到client和服 ...

  5. json与jsonp应用及其他ajax数据交互方式

    1.json是数据交换格式,使用实例如下: $.getJSON( '/manage/asset/asset_delByIds.action', { 'ids':id }, function(data) ...

  6. asp.net中webservice与android的json数据交互方式设置

    一 .服务器端设置 1.修改web.config 在web.config里面的的system.Web节点添加 <webServices> <protocols> <add ...

  7. WebService的web客户端同步、异步、多线程向服务端传入参数的数据交互方式

    接着上一章的内容,在上一章中我们知道了如何.net平台下去建立一个WebService,以及同步调用.异步调用.开线程异步调用三种客户端从服务端获取数据的方式,在本章了所要讲的,是如何将客户端的数据, ...

  8. asp.net 前后台数据交互方式(转)

    https://blog.csdn.net/luckyrass/article/details/38758007 一.前台直接输出后台传递的数据 后台代码: // .aspx.cs public st ...

  9. 基于Ajax技术的前后端Json数据交互方式实现

    前言 使用浏览器访问网站是日常生活中必不可少的一件事情,当我们在浏览器地址栏中输入网址后会看到网站的内容,那么这个过程中发生了什么?下面简单介绍下浏览器访问网站过程. 第一步:浏览器向DNS服务器发起 ...

随机推荐

  1. 第二百九十八天 how can I 坚持

    晚上和同学一块吃了个饭,聊了好多. 晚上回来的路上,突然想起一句话,现在又忘了. 睡觉. 人生平淡也好,光彩也罢,只是一个历程,算了,睡觉.

  2. (转载)Linux启动过程详解

    启动第一步--加载BIOS当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它.这是因为BIOS中包含了CPU的相关信息.设备启动顺序信息.硬盘 ...

  3. HDU 5723 Abandoned country (最小生成树 + dfs)

    Abandoned country 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5723 Description An abandoned coun ...

  4. memcached全面剖析–3. memcached的删除机制和发展方向

    memcached在数据删除方面有效利用资源 数据不会真正从memcached中消失 上次介绍过, memcached不会释放已分配的内存.记录超时后,客户端就无法再看见该记录(invisible,透 ...

  5. 初学Android 一 基本开发环境

    Android平台架构 1.应用程序层: 核心应用程序和普通应用程序,他们都是平级的,都可以平等的调用下层. 2.应用程序框架:供上一层调用的API. 3.函数库: 不能被直接调用的C/C++库的集合 ...

  6. CSS3实现翻转菜单效果

    演示地址 点击打开链接 注意:菜单翻转效果在搜狗浏览器上看不出来.推荐用FireFox <!DOCTYPE   html   PUBLIC   "-//W3C//DTD XHTML 1 ...

  7. flex 简单跑马灯效果(竖着显示)

    <mx:Move id="move_area" target="{VBox_AreaWarning}"/> //move效果,模拟跑马灯 <s ...

  8. Codeforces Beta Round #51 A. Flea travel 水题

    A. Flea travel Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/55/problem ...

  9. IOS AutoLayout 文章

    开始iOS 7中自动布局教程(一) 开始iOS 7中自动布局教程(二) 代码的方式自动布局 自动布局时计算Cell高度

  10. SIGGRAPH 2014 之行

    当地时间8月8号: 经历十个多小时的飞行,在紧急出口旁的位置上忍受发动机的轰鸣声后,顺利降落温哥华机场.回答完加拿大边检的几个诸如为何而来,打算住哪儿的问题后,比较顺利出关.三十五加元的打车费及百分十 ...