利用xmlHttpRequest组件作为交互工具,利用XML作为数据传输的格式。
[ XML ]
使用XML作为传输格式的优势:
1. 格式统一, 符合标准
2. 容易与其他系统进行远程交互, 数据共享比较方便
缺点:
1. XML文件格式文件庞大, 格式复杂, 传输占用带宽
2. 服务器端和客户端都需要花费大量代码来解析XML, 不论服务器端和客户端代码变的异常复杂和不容易维护
3. 客户端不同浏览器之间解析XML的方式不一致, 需要重复编写很多代码
4. 服务器端和客户端解析XML花费资源和时间
[ JSON ]
那么除了XML格式, 还有没有其他格式, 有一种叫做JSON (JavaScript Object Notation) 的轻量级数据交换格式能够替代XML的工作.
优点:
1. 数据格式比较简单, 易于读写, 格式都是压缩的, 占用带宽小
2. 易于解析这种语言, 客户端JavaScript可以简单的通过eval()进行JSON数据的读取
3. 支持多种语言, 包括ActionScript, C, C#, ColdFusion, Java, JavaScript, Perl, PHP, Python, Ruby等语言服务器端语言, 便于服务器端的解析
4. 在PHP世界, 已经有PHP-JSON和JSON-PHP出现了, 便于PHP序列化后的程序直接调用. PHP服务器端的对象、数组等能够直接生JSON格式, 便于客户端的访问提取.
另外PHP的PEAR类已经提出了支持 (http://pear.php.net/pepr/pepr-proposal-show.php?id=198)
5. 因为JSON格式能够直接为服务器端代码使用, 大大简化了服务器端和客户端的代码开发量, 但是完成的任务不变, 且易于维护
缺点:
1. 没有XML格式这么推广的深入人心和使用广泛, 没有XML那么通用性
2. JSON格式目前在Web Service中推广还属于初级阶段
PS: 据说Google的Ajax是使用 JSON+模板 做的
[ JSON相关链接 ]
官方网站: http://www.json.org/
官方网站中译: http://blog.patterns.cn/json/
PEAR::HTML_AJAX: http://pear.php.net/package/HTML_AJAX (相当成熟的Ajax框架, 使用JSON进行数据传输, 包含丰富的客户端和服务器端)
Services_JSON: http://pear.php.net/pepr/pepr-proposal-show.php?id=198
PHP JSON扩展: http://www.aurore.net/projects/php-json/
PHP和JavaScript使用JSON交换数据: http://www.flyinghail.net/archives/10
Ajax Using JSON: http://www.x2blog.cn/lulei/3851.html
XML跟JSON相应比较文章: http://blog.hexun.com/dulao5/912477_d.html
让Service_JSON支持中文: http://blog.sina.com.cn/u/55acd28f01000113
http://dev2dev.bea.com.cn/techdo ... roduction-json.html
http://tag.csdn.net/tag/json/2.html
本篇文章来源于 cssrain.cn 原文链接:http://www.cssrain.cn/article.asp?id=408
分享到:
相关推荐
life-expectancy-table.json
bookmarks-2010-08-05.json
ffhq-dataset-v2.json
赠送jar包:javax.json-1.0.4.jar; 赠送原API文档:javax.json-1.0.4-javadoc.jar; 赠送源代码:javax.json-1.0.4-sources.jar; 赠送Maven依赖信息文件:javax.json-1.0.4.pom; 包含翻译后的API文档:javax.json...
在Java世界里,`json-lib-2.1.jar` 是一个用于处理JSON的库,它提供了一系列的方法来将Java对象转换为JSON格式,以及将JSON字符串反序列化回Java对象。这个库支持多种Java类型,包括基本类型、集合、Map、自定义Java...
bookmarks-2011-06-17.jsonbookmarks-2011-06-17.jsonbookmarks-2011-06-17.jsonbookmarks-2011-06-17.json
HE-GoogleRedirect.json
wazuh-elastic7-template-alerts.json,wazuh的ES模块导入
赠送jar包:android-json-0.0.20131108.vaadin1.jar; 赠送原API文档:android-json-0.0.20131108.vaadin1-javadoc.jar; 赠送源代码:android-json-0.0.20131108.vaadin1-sources.jar; 赠送Maven依赖信息文件:...
jquery.json-viewer, 用于显示JSON数据的jQuery插件 jQuery浏览器JSON浏览器是一个jQuery插件,它可以通过将JSON对象转化为HTML来轻松显示JSON对象。功能:语法高亮显示在单击时折叠和展开子节点可以点击链接易于...
`json-c-0.12.1.tar.gz`是这个库的一个特定版本,0.12.1,以.tar.gz压缩格式提供,这是在Linux和类Unix系统中常见的源码包打包方式。 1. **tar.gz文件格式**:`.tar.gz`是Linux下的归档压缩格式,由`tar`工具用于...
赠送jar包:android-json-0.0.20131108.vaadin1.jar; 赠送原API文档:android-json-0.0.20131108.vaadin1-javadoc.jar; 赠送源代码:android-json-0.0.20131108.vaadin1-sources.jar; 赠送Maven依赖信息文件:...
bookmarks-2010-12-30.json bookmarks-2010-12-30.jsonbookmarks-2010-12-30.jsonbookmarks-2010-12-30.jsonbookmarks-2010-12-30.json
bookmarks-2010-12-22.json bookmarks-2010-12-22.jsonbookmarks-2010-12-22.jsonbookmarks-2010-12-22.jsonbookmarks-2010-12-22.json
fontlist-v330.json文件来自.matplotlib
- **版本与JDK兼容性**:"json-lib-2.2.2-jdk15"表明这个版本的json-lib是针对JDK 1.5编译的,这意味着它可以运行在支持JDK 1.5及更高版本的Java环境中。 - **功能**:json-lib提供了一系列的API,可以将Java对象...
jquery.json-2.3.min.js和jquery.json-2.3.js jQuery为开发插件提拱了两个方法,分别是:jQuery.extend(object); 为扩展jQuery类本身 jQuery.fn.extend(object);给jQuery对象添加方法。
bookmarks-2010-10-27.jsonbookmarks-2010-10-27.jsonbookmarks-2010-10-27.jsonbookmarks-2010-10-27.jsonbookmarks-2010-10-27.jsonbookmarks-2010-10-27.jsonbookmarks-2010-10-27.json
bookmarks-2011-04-04.jsonbookmarks-2011-04-04.jsonbookmarks-2011-04-04.jsonbookmarks-2011-04-04.jsonbookmarks-2011-04-04.jsonbookmarks-2011-04-04.jsonbookmarks-2011-04-04.jsonbookmarks-2011-04-04.json
bookmarks-2009-12-26.json