Ajax 框架

来源:百度文库 编辑:神马文学网 时间:2024/05/20 14:48:13
Ajax框架有基于服务器端和客户端两种,多数是开源实现,并且发展速度很快。
服务器端框架
1.  Sajax
Sajax拥有活跃的社区,支持Perl、Python、Ruby、ASP等语言,每种语言Sajax都有一个简单的库,利用Sajax可以直接从JavaScript调用服务器代码。
官方网站:http://www.modernmethod.com/sajax 。
2.  JSON
JSON作为JavaScript语言的一个子集,是一种描述数据的轻量级语法,和XML类似,用于交换数据。XML相关的有XML-RPC,JSON也有JSON-RPC远程调用协议,它在Java、Ruby、Python、Perl中都有实现。
网上参考:http://www.crockford.com/json/ 。
3.  DWR
DWR这个字眼出现的频率较高,在网上搜索了一下,查到DWR全称是Direct Web Remoting,代表着可以直接从JavaScript远程调用Java方法。使用DWR需要一些额外的配置,如编辑Web应用的描述文件,编辑DWR的配置文件,来指定可以远程创建和调用的类,从这种方式可以看出其中存在一些安全隐患,但是,由于DWR支持常用的Struts/WebWork/Tapestry Web框架,在Apache协议下发布,加上丰富的文档资料,使得DWR在Java领域非常流行。
介绍DWR的相关文章可以参考:
http://www.blogjava.net/mstar/category/2359.html
http://www.blogjava.net/zkjbeyond/category/11348.html
更多信息可以访问:http://getahead.ltd.uk/dwr/index 。
4.  Buffalo
Buffalo是由国人开发的Ajax框架。Buffalo中定义了Web远程调用的传输基础,并且将远程调用对象完整的序列化到了本地,成为可以被JavaScript编程触及的对象。Buffalo中的重要组件-BuffaloBinding,提供了将JavaScript对象绑定到HTML元素的能力。这种绑定将是无侵入的,只需要在HTML元素中加入若干个不影响排版的属性,即可将数据与界面绑定。Buffalo1.2引入了新的众多的特性包括,新的重新改写的Spring集成,与流行JavaScript库Prototype的集成,支持浏览器前进后退按钮等等。
下载链接:http://www.amowa.net/buffalo/ 。[引自CSDN]
5.  Ajax.Net
顾名思义,Ajax.Net是.Net平台下的Ajax框架,它可以从JavaScript客户端调用.Net方法。Ajax.Net所包括的DLL可以和VB.Net/C#配合使用,其相关文档也很多。参考网站:http://ajax.net/ 。
6.  Atlas
这是Microsoft的一个项目,其特点在于提供客户端脚本框架、ASP.Net控件及Web服务集成。微软的项目,还是值得关注的。
相关介绍:http://blog.joycode.com/saucer/archive/2005/06/30/58284.aspx/ 。
7.  Ruby on Rails
这个就不用多说了,前段时间开始就炒的异常火热的一个框架,建立在Ruby语言基础上,其最显著的特性是能够快速开发Web应用,使用Rails会觉得Ajax非常简单。Rails拥有许多JavaScript库,另外有一个模块封装了Ruby的JavaScript调用。对各种Rails的介绍,可以参考江南白衣的文章各系Rails大点兵。网站参考:http://www.rubyonrails.org/ 。
8.AjaxPro
9.Bitkraft forASP.NET
Bitkraft是个基于(.NET)Web框架的CLR(公共语言运行库),允许用独特的方式创建和操作分布式Web内容。用C#编写,运行在微软的.NET 1.1和Mono框架下,无缝式的客户端-服务器响应方式是它的最大特点。Bitkraft没有使用XML组织数据,而是用JSON代替。
支持的浏览器: IE5+, Firefox1+, NS6 服务器端要求:ASP.NET, Mono XSP, Cassini, Apache (modMono) .NET Framework 1.1+ 事件驱动 支持同步和异步的远程代理 客户端支持所有的.NET类型或自定义类对象映射到JSON中 用JSON取代XML 免费,开源许可协议
10 WebORB for .NET (2005年8月)
WebORB for .NET是一个用.NET和XML Web Services方式开发AJAX和基于Flash的富客户端应用程序(在线例子)
WebORB包括一个富客户端开发类库。提供简单的在线式API用来绑定或者调用任何.NET对象、XML Web Services 支持异步或同步的事件驱动 不需要在服务端修改任何代码,不需要自定义方法或属性、变量等。不要求设计时指定代理等。 同步调用不需要回调,异步调用需要一个回调方法。 客户端可以向服务端请求指定的活动方式,不需要任何编程就可以把处理结果轻易的转变为状态。 提供一个特定API来处理数据库查询结果-服务器代码能返回DataSet或者DataTable,而客户端以一个类似于RecordSet的&#106avascript对象来显示这个结果。该对象提供检索列名和行数据的方法。 支持数据分页技术。客户应用程序能检索页面中的数据。 支持以参数的方式返回所有服务期端数据类型,如primitives, strings, complex types, arrays, native .net collections, remote references 目前有两个版本:标准版(免费),专业版(商业许可)
11ComfortASP.NET (2005年8月)
ComfortASP.NET可以让开发者在纯.NET下开发类似AJAX(DHTML,&#106avascript,XMLHttp)特性的应用程序。
快速应答 减少HTML传输 减少页面重载 无闪烁的浏览器内容更改AJAX用户体验,
12 AjaxAspects (2005年8月)
AjaxAspects是个可以用&#106avascript调用服务端WebService事件的引擎
用标准的SOAP和WSDL进行服务端-客户端通信 用简单的类型和XML对象支持带参数的返回值 缓存支持 动作队列 免费使用,开源协议
客户端框架
1.  Dojo
最老的框架之一,2004年9月开始开发,它具有一个独特的特性,即支持向后和向前按钮,通过注册一个回调的方法,使得用户在点击向后和向前按钮的时候调用改方法,实现后退前进的功能。Dojo是相对成熟的工具包之一。
具体内容参考网站:http://dojotoolkit.org/ 。
2.  Rico
Rico侧重点在于拖放效果、数据网格、自定义页面布局、淡入淡出等人性化效果的轻易实现,使用Rico需要Prototype.js库来支撑,zkjbeyond有关于Prototype.js的基本介绍。
Rico官方网站:http://openrico.org/home.page/ 。
3.  Flash/JavaScript集成库
如果要混合使用Flash和Ajax,则可以使用Flash/JavaScript集成库,这个工具集可以使得JavaScript和ActionScript(Flash中支持的语言)能够相互调用,传递数据。
相关资料可以访问:http://weblogs.macromedia.com/flashjavascript/ 。
4.  SACK
SACK是一个针对XMLHttpRequest的瘦包装器,可以简化Ajax开发,它由一个JavaScript文件组成,包含很少的代码,入门比较方便,它最主要的特性应该就是足够简单。
相关信息可以访问:http://twilightuniverse.com/projects/sack/ 。
5.  RSLite
RSLite是远程脚本的一个实现,从2000年开始发展。它的特性在于拥有广泛浏览器的支持(因为没有利用XMLHttpRequest对象),它是一个轻量级的框架。
网站信息:http://www.ashleyit.com/rs/rslite/ 。
6.  Google AJAXSTL
Google AJAXSTL是使用XPath的XSL转换(XSLT)的JavaScript实现。该工具包很小,并且还不完善,但作为使用AJAX的先驱,还是应该给予一定的关注。
开源链接:http://goog-ajaxslt.sourceforge.net/ 。
qooxdoo (开发中; 成立于2005年5月)
qooxdoo,是另一个发展迅猛的应用框架,提供广泛的UI支持,正在开发基础架构等特性。
* 基础结构特性:
o 能轻易的捕获和操纵DOM事件
o 支持调试
o 支持一个时间操作的Timer类
o Getter/Setter支持
* UI:
o 窗口组件库和框架
o 界面布局管理
o 图像缓存和透明PNG图片处理
* 开源(LGPL).
Tibet (开发中; 创建于2005年6月)
Tibet提供了大量的易移植和完整的JavaScript API,通过这些可以快速生成大量的客户端
代码,Tibet自称是企业级AJAX。
* 远程脚本调用封装在XMLHttpRequest中
* URI支持
* 支持所有的HTTP事件,不再仅仅是GET和POST
* 低级的协议-File://和WebDav也可以当作HTTP正常使用
* Web Services调用支持,包括SOAP、XML-RPC等等
* 大型的Javascript对象库
* 多种多样的XML操作支持
* IDE和开发工具
* 开源协议(OSI)