JSON

Ajax中XML和JSON格式的优劣比较

字号+ 作者:H5之家 来源:H5之家 2016-10-23 14:00 我要评论( )

刚做完一个小的使用Ajax的项目。整个小项目使用JavaScript做客户端,使用PHP做服务器端、利用xmlHttpRequest组件作为交互工具,利用XML作为数据传输的格式。做完后基本做一个简单总结,简单分析一下使用XML作为传输格式的优劣。 [ XML ] 使用XML作为传输格式

刚做完一个小的使用Ajax的项目。整个小项目使用JavaScript做客户端,使用PHP做服务器端、利用xmlHttpRequest组件作为交互工具,利用XML作为数据传输的格式。做完后基本做一个简单总结,简单分析一下使用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类已经提出了支持 (?id=198)
5. 因为JSON格式能够直接为服务器端代码使用, 大大简化了服务器端和客户端的代码开发量, 但是完成的任务不变, 且易于维护

缺点:
1. 没有XML格式这么推广的深入人心和使用广泛, 没有XML那么通用性
2. JSON格式目前在Web Service中推广还属于初级阶段

PS: 据说Google的Ajax是使用 JSON+模板 做的
[ JSON相关链接 ]
官方网站:
官方网站中译:
PEAR::HTML_AJAX: (相当成熟的Ajax框架, 使用JSON进行数据传输, 包含丰富的客户端和服务器端)
Services_JSON:?id=198
PHP JSON扩展:
PHP和JavaScript使用JSON交换数据:
Ajax Using JSON:
XML跟JSON相应比较文章:
让Service_JSON支持中文:
[ 目前成熟的客户端框架 ]
Xajax: (目前在国内使用比较广泛,跟Smarty模板结合良好)
Sajax: (框架比较复杂,支持语言较多)

AJAX框架汇总:

相关文章

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 在Golang中使用json

    在Golang中使用json

    2016-10-23 16:00

  • jQuery下json的使用实例

    jQuery下json的使用实例

    2016-10-23 13:00

  • jQuery JSON的解析方式分享

    jQuery JSON的解析方式分享

    2016-10-23 12:00

  • JSON 数据解析简介

    JSON 数据解析简介

    2016-10-21 13:00

网友点评