Ajax 权衡:XML 的多种风格

 Ajax 代表 Asynchronous JavaScript and XML,其思想是:利用具有高可靠性的现代 Web 浏览器,可以在使用 Web 应用程序的同时,通过服务器连接来回传递数据。标准的 Web 技术会沿着链接前进,导致整个页面重新装载,而 Ajax 突破了这个限制。基于 Ajax 开发的许多方面需要不同于传统 Web 页面的设计决策:如何管理返回按钮、如何显示更新的数据、以什么频率发送更新等等。本文只关注其中一个问题:应该以什么格式交换数据?
选择很多。Ajax 中的 X 代表 XML,但是 XML 并非一种语言,它是一种用来构建语言的工具。所以,您要做的第一项决定是:是使用一种现有的语言,还是构建自己的语言?这要涉及几方面的权衡。必须考虑是否有一种现有的语言能够满足自己的需要,或者您是否能够设计一种更适合需要的语言?是否有处理这种语言的工具,还是必须自己构建工具?如果您要与别人交流(如果不需要与别人交流,那为什么要构建 Web 应用程序呢?),那么别人也熟悉这种语言吗?其他应用程序能顺利访问和使用您的数据吗?

可以从以下格式中进行选择:(X)HTML(包括微格式子集)、SVG 或 X3D(用于图形数据)、Atom(用于随时间变化的数据片段)、OPML(用于简单的大纲)和 RDF(用于语义性图表)。在极端情况下,可以发送 DocBook、DITA 或 OpenOffice 格式的数据,这些格式非常复杂、具有语义性而且功能全面。(关于这些格式的更多信息参见 参考资料。)

在另一个极端,可以不理会 XML,转而发送任何类型的数据。可以发送二进制数据、图像、电影或 PDF 文件;但这是一种倒退,这些数据很难在浏览器中用 JavaScript 进行操作。更易于为人接受的方法是,发送比 XML 简单的文本格式:由制表符或逗号分隔的列表、Markdown 或其他结构化程度较低的文本、YAML 或 JSON。即使不使用完整的 XML,您也有几十种选择,XML Alternatives 站点对这些技术做了全面介绍(参见 参考资料)。总之,选择的范围非常广,从最丰富也最复杂的,到没那么丰富更为简单的。而且,即使对于下面列表的一种格式,也可以找到多种数据编码方法,所以这个分类是有争议的,只能算是一种粗略的分类。

。。。。。。

                                                                                                          点击此处查看全文

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值