一靶瘸、DOM解析XML字符串
-
創(chuàng)建DOM解析XML的解析器啸澡,解析器解析XML字符串
IE瀏覽器 var parser = new ActiveXObject("Microsoft.XMLDOM"); parser.async = false; xmlDoc = parser.loadXML(xmlFile); 其他游覽器 var parser = new DOMParser(); var xmlDoc = parser.parseFromString(xmlFile,"application/xml");
-
解析XML元素與解析HTML元素一致
獲取元素最常用的是getElementsByTagName很少使用ById和ByName
PS:
瀏覽器不允許讀取外部的XML文件
瀏覽器解析符合XML格式的字符串
二趟大、Ajax的XML
1.請求的數(shù)據(jù)格式-XML
1)客戶端如何構建XML格式的數(shù)據(jù)
構建的數(shù)據(jù)類型 - 字符串類型
字符串的內(nèi)容要符合XML格式的語法要求
2)服務器端如何接受符合XML格式的數(shù)據(jù)
接收到的客戶端的請求數(shù)據(jù) - 字符串類型,php集成了DOM的相關內(nèi)容
DOMDocument
DOMElement
DOMNode
2.響應的數(shù)據(jù)格式-XML
1)服務器端如何構建符合XML格式的數(shù)據(jù)
設置服務器端的響應頭Content-Type值為text/xml
header("Content-Type:text/xml");
構建符合XML格式的數(shù)據(jù)內(nèi)容
手動方式構建字符串內(nèi)容
DOMDocument對象的方法
loadXML(符合XML格式的字符串)
saveXML()方式進行響應
2)客戶端如何接受XML格式的數(shù)據(jù)
使用XMLHttpRequest對象的responseXML屬性接收
接收到的就是XML DOM對象(不需要進行解析)
三、json
JSON - javascript object notation(JS原生支持)
json數(shù)據(jù)格式源于js
-
特點:
易于程序員閱讀和編寫
易于計算機解析和生成
json是目前網(wǎng)絡上使用最廣泛的數(shù)據(jù)格式之一 -
JSON的結構
Array和Object
支持的數(shù)據(jù)類型
字符串山宾、數(shù)值、布爾值鳍徽、對象资锰、數(shù)組、null
四阶祭、ajax中的json格式
-
請求格式為json
客戶端向服務器端發(fā)送請求為json格式的數(shù)據(jù)
構建符合JSON格式的字符串 定義字符串時绷杜,保證里面使用雙引號,外面使用單引號
服務器端接受json格式的數(shù)據(jù)
使用json_decode()函數(shù)進行解析 json_decode($json,true);ture代表是否轉(zhuǎn)換為數(shù)組
-
響應格式為json
服務器端向客戶發(fā)送響應為json格式的數(shù)據(jù)
手工方式構建json格式的字符串 使用json_encode()函數(shù)將php變量(數(shù)組)濒募,轉(zhuǎn)換成復合json格式的字符串
客戶端接受json格式的數(shù)據(jù)
使用XMLHttpRequest對象的responseText屬性接受 然后使用eval函數(shù)進行轉(zhuǎn)換,如果使用()包裹鞭盟,eval函數(shù)強制轉(zhuǎn)換為js代碼, var json = eval("("+data+")");
五瑰剃、 HTML(文本)齿诉、XML格式、JSON格式的優(yōu)缺點
HTML: 簡單,但解析復雜
XML: 構建粤剧、解析復雜
JSON: 輕量級