宏媒体公司于2004年3月发布了Flex。Flex应用程序采用“一次加载,多次使用”的原则。Ajax包括:基于XHTML和CSS标准的表示;使用文档对象模型进行动态显示和交互;使用XMLHttpRequest与服务器异步通信;利用XML和XSLT技术实现数据交换和维护;使用JavaScript绑定一切[4]。它在客户机上创建一个XMLHttpRequest对映像,这个对映像向服务器提交一个请求。
传统的网页需要在点击超链接或按钮后重新加载,有些区域在加载前是空白的,这影响了用户体验。尤其是当网络不顺畅时,等待时间非常长。随着移动设备的普及,以及GSM网络甚至一般3G网络的速度缓慢,如果需要加载整个网页,用户的耐心将会大大消耗。在这种背景下,有一种不刷新技术,它只更新本地页面而不刷新整个页面。1传统网页加载方法传统网页加载方法是客户端(即浏览器)提交网址请求,服务器收到请求后,将对的整个网页文件以超文本标记语言格式发送给客户端,客户端解释这些超文本标记语言代码并显示网页,如如图1所示。在这个过程中,即使本地数据被更新,客户端也需要向远程服务器提交整个页面的刷新请求,这样整个对页面的所有数据都可以在远程服务器上运行。此外,远程服务器返回的数据是整个页面,这将占用大量的互联网带宽,并消耗客户端资源来重新绘制页面[1]。当网络速度较慢时,这种传统的加载方法会延长用户的等待时间。当网络速度普遍较慢时,移动设备会等待更长时间,这会降低用户体验。不刷新技术的出现,即只更新本地数据而不刷新整个页面,极大地改善了这种尴尬局面。当用户请求更新数据时,服务器只需将本地数据返回给客户端显示,提高了系统的响应速度,减少了用户的等待时间。2.2客户端插件技术客户端插件是根据浏览器规范的应用程序接口编写的程序。网络浏览器可以直接调用插件程序来处理特定类型的文件。客户端插件也可以直接与网络服务器通信,从而达到更新数据而不刷新的目的。客户端插件包括Java的Java小程序、Microsoft, Flash的ActiveX和Adobe的Flex等。Java Applet是一个用Java语言编写的小应用程序,嵌入在网页中。它可以直接与用户交互,并处理用户请求和从服务器接收的数据。ActiveX插件以前也称为OLE控件或OCX控件。它是一些软件组件或对图像,它们被插入到网页中以实现与用户的交互和与服务器的通信。宏媒体公司于2004年3月发布了Flex。基于其专有的Macromedia闪存平台,它是一种非常便携的客户端技术。只要客户端安装了Flash Player,它就可以使用Flex技术。Flex应用程序采用“一次加载,多次使用”的原则。Flex客户端是一个完整的应用程序,它不是由多个页面组成的,自然不需要刷新。加载页面后,Flex客户端会立即下载到客户端,某些模块也可以延迟加载[3]。2.3 ajax技术ajax技术是目前最热门的网页技术之一,它的全称是异步JavaScript和XML,即异步JavaScript和XML。它以一种新的方式结合了JavaScript、XHTML、CSS、DOM、XML、XSLT、XMLHttpRequest和其他编程技术。Ajax包括:基于XHTML和CSS标准的表示;使用文档对象模型进行动态显示和交互;使用XMLHttpRequest与服务器异步通信;利用XML和XSLT技术实现数据交换和维护;使用JavaScript绑定一切[4]。它在客户机上创建一个XMLHttpRequest对映像,这个对映像向服务器提交一个请求。在收到返回信息后,Javascript使用DOM(文档对模型)来更新本地网页内容。三种免刷新技术的比较虽然这三种技术可以在不刷新的情况下更新本地数据,但它们之间存在一些差异。
并非所有浏览器都支持隐藏iframe的方法。浏览器插件方法也有这样的问题。如果用户选择不安装插件,那么这个方法也就失去了作用;ajax是最好的浏览器兼容性,几乎所有的浏览器都支持javascript,创建XMLHttpRequest对就像在对创建不同的浏览器一样。因此,Ajax被广泛应用于当前的网站,从门户网站到个人网站、微博、博客等。和ajax随处可见。结论由于无刷新技术的出现,开发者可以像开发桌面软件一样开发网络程序,各种网络应用大放异彩,丰富了网络环境。网页免刷新技术减轻了服务器压力,节省了网络带宽。网页可以在各种条件下快速显示,特别是在手机网络中,减少用户等待时间,改善用户体验。