诚为大家所知,Flash之所以优秀,就是它可以带来良好的用户体验和交互特性。既然涉及到交互性,开发人员在开发过程中必然会遇到实时更新的问题,那么,当后台数据发现变化的时候,如何让Flash端实时刷新显示数据呢?以下是一些可资参考的方法,各种方案优缺点各异,开发系统之前请仔细考量:
第一种:Flex端采用轮询的方式访问后台,查看后台数据是否有更新,若有则获取数据,更新界面信息;这中方法一般适用于后台更新并不频繁,对实时性信息更新要求程度一般的实时更新。例如QQ上的好友个人头像更新。
第二种:Socket :这种方法的原理是后台携带数据并发出数据更新通知,前台监听到通知后得到数据发布到界面上。此方式适用于对信息的及时性特别强的业务。如聊天室,IM即时聊天!这方面flash已有成熟的方案:Red5或FMS
第三种:使用 BlazeDS 的 Romoting 消息服务,例如商城购物车监控。具体优劣待查。
第四种:RTMP方式:Adobe在2009年一月开始将RTMP进行开源。不过应用的时候还是需要向Adobe进行License申请,详情:http://www.adobe.com/aboutadobe/pressroom/pressreleases/200901/012009RTMP.html