Ajax中XML和JSON格式

Ajax中两种常见的数据传输方式分别为XML和JSON,下面详细介绍这两种格式在Ajax中的用法以及区别!

XML和JSON是用来替代Ajax中的文本格式

XML

HTML、DHTML、XHTML、SHTML和XML的区别

  • HTML:超文本标记语言编写网页用的
  • DHTML: 动态的HTML,只是一种网络概念
  • XHTML:基于xml的可扩展的超文本标记语言
  • SHTML:标准通用标记语言( SSI 服务器端包含指令)
  • XML:可扩展标记语言,常用于配置文件和数据格式
JSON

JSON - JavaScript object notation(支持原生JS),JSON 数据格式源于JavaScript

特点:易于程序员阅读和编写,易于计算机解析和生成

结构:array - 数组,object - 对象

支持的数据类型:String、Number、Boolean(true|false)、Object、Array、null

Ajax中的XML格式

客户端需构建符合XML格式语法要求的字符串,然后将此字符串发送到后台服务器页面,服务器端接收到该数据后,利用服务器语言(以PHP为例)集成好的DOM相关内容:DOMDocument类、DOMELemente类以及DOMNode类来进行相应的处理以及一系列的操作。

当服务器端处理完成数据之后,需要响应数据给到客户端,So服务器端得将数据构建成符合XML格式的数据,然后再响应回去,如何构建呢:两个步骤;1、设置响应头,将“Content-Type”的值设置为“text/xml”,2、构建字符串的内容,通过saveXML()方法进行构建并响应。手动构建的就不说了。

当服务器端响应完成之后就该客户端来进行接收了,客户端该如何来进行接收呢,使用XMLHttpRequest对象的responseXML属性接收,接收到的就是XML DOM对象(不需要使用XML解析器进行解析)

Ajax中的JSON格式

请求格式为JSON

客户端向服务器端发送请求为JSON格式的数据

构建符合JSON格式的字符串

保证定义字符串时,使用单引号(里面使用双引号)

服务器端接收JSON格式的数据

接收客户端的数据,使用json_decode进行解析

响应格式为JSON

服务器端向客户端发送响应为JSON格式的数据

使用json_encode()函数将PHP变量(array)转换成json格式的字符串

客户端接收JSON格式的数据

使用XMLHttpRequest对象的responseText属性接收

使用eval()函数转换 //转换时需要加”()”将其包裹

XML和JSON的区别
XML格式
  • 优点:
    格式统一,符合标准;

容易与其他系统进行远程交互,数据共享比较方便。

  • 缺点:
    XML文件庞大,文件格式复杂,传输占带宽;

XML解析复杂且不易维护;

JSON格式
  • 优点:
    数据格式比较简单,易于读写,属于轻量型

解析方便,大大简化了代码开发量,易于维护

  • 缺点:
    没有XML那样的通用性

对数据的描述性比XML差

作者:酷我青春
原文:https://blog.csdn.net/u013447464/article/details/52516073


1 + 7 =

求知若飢,虛心若愚。