Flash与后台数据交换方法整理

本文介绍了三种Flash通信方式:URLLoader(URLStream)、FlashRemoting和XMLSocket(Socket)。详细对比了它们各自的优缺点,包括数据传输类型、传输效率、服务端支持及配置复杂度等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.URLLoader(URLStream)

 

2.FlashRemoting

 

3.XMLSocket(Socket)

 

4.FMS/FCS

 

1.URLLoader(URLStream)

 

优点:

1、flash代码实现起来简单,方便。

2、服务端接收页面和接收一个表单过来的数据一样处理,不需要专门的技术,所有服务端程序都可以实现!

3、可以发送字符串变量,也可以发送文件流。

4、可以结合AMF3接收更为丰富的数据类型。

缺点:

1、传递的变量不宜过多。

2、变量传递的值不宜过长。

注意:

如果接收数据类型设置成URLLoaderDataFormat.VARIABLES后,第一个字符不能以&开头。

2.FlashRemoting

 

优点

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.如果使用虚拟主机的话配置起来比较麻烦。

 

3.XMLSocket(Socket)

 

XMLSocket主要用于与服务端进行即时通信,目前的应用领域主要是Flash文本聊天和Flash在线游戏等方面。

 

    XMLSocket的优点:

 

    1、能和服务端即时通信;

 

    2、Flash Player 5.0以上的版本内置类,不需另装组件或插件;

 

    3、因为XMLSocket就是相当于一个Socket客户端,所以一般的中间件都支持的(如java,.Net等)

 

    XMLSocket的缺点:

 

    1、XMLSocket只能传字符串或xml格式的文本,数据类型单一;

 

    2、XMLSocket服务端自行开发的话,需要对Socket技术比较了解才行,好在网上有现成的服务端软件(商业的XMLSocket Server 有Unity、Fortress;开源的XMLSocket Server 有Oregano Multiuser Server);

 

    3、还有就是XMLSocket的80端口与flash安全策略问题。(网上有一个解决方法,不知是否可行,请自行验证)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值