用系統(tǒng)的json解析器解析
NSDictionary *dict=[NSJSONSerialization JSONObjectWithData:downloadData options:NSJSONReadingMutableContainers error:nil];
JSON
//http:// 說明客戶端與服務(wù)進(jìn)行數(shù)據(jù)交互遵守超文本傳輸協(xié)議(位于網(wǎng)絡(luò)應(yīng)用層協(xié)議)
//192.168.88.8/sns(客戶端向服務(wù)端進(jìn)行請(qǐng)求的初始地址(服務(wù)端的地址))可以是一個(gè)ip地址或者是一個(gè)域名
///my/user_list.php(服務(wù)器資源的后續(xù)地址,也叫請(qǐng)求接口)
//http://192.168.88.8/sns/my/user_list.php組成了向服務(wù)器請(qǐng)求的地址
//地址和參數(shù)之間用?隔開 (參數(shù)可以理解為對(duì)資源的篩選條件)
//參數(shù)的書寫:(參數(shù)名稱=參數(shù)值(值的類型不同)),不同的參數(shù)之間用&來連接
//同步,程序代碼順次執(zhí)行,向服務(wù)器請(qǐng)求是一個(gè)耗時(shí)的過程,會(huì)影響視圖的展示,用戶體驗(yàn)極差
//返回?cái)?shù)據(jù)是json格式的數(shù)據(jù),數(shù)據(jù)比較輕巧,常用于客戶端與服務(wù)端之間的數(shù)據(jù)傳輸
//需求將json格式的字符串解析成我們熟悉的數(shù)據(jù)類型
//將字符串轉(zhuǎn)成data
//用系統(tǒng)自帶的json解析類,將data解析成NSArray或者NSDictionary
//NSJSONSerialization iOS5之后有的 蘋果自帶的json解析類
//options寫成 NSJSONReadingMutableContainers ,會(huì)將data解析成數(shù)組或字典(解析成字典居多)
//用請(qǐng)求的url生成一個(gè)請(qǐng)求,請(qǐng)求對(duì)象帶有請(qǐng)求信息,客戶端會(huì)將request帶給服務(wù)端
//作用:會(huì)自動(dòng)在客戶端和服務(wù)端之間創(chuàng)建連接,將request由客戶端發(fā)給服務(wù)端
//自動(dòng)遵守http協(xié)議,并向服務(wù)端發(fā)起get請(qǐng)求,請(qǐng)求方式為異步
//get請(qǐng)求(http協(xié)議中請(qǐng)求方式的一種,特點(diǎn)請(qǐng)求地址和參數(shù)放在一起,拼成一個(gè)字符串發(fā)起請(qǐng)求,響應(yīng)迅速、快捷,但安全性極差)
//異步:(應(yīng)用程序在啟動(dòng)之初,會(huì)自動(dòng)創(chuàng)建一個(gè)UI主線程,負(fù)責(zé)視圖界面的創(chuàng)建、添加和刷新等,客戶端向服務(wù)端請(qǐng)求數(shù)據(jù)的耗時(shí)過程,NSURLConnection會(huì)自動(dòng)開辟一個(gè)新的線程來完成)
//主線程顯示UI和子線程請(qǐng)求數(shù)據(jù)同時(shí)進(jìn)行,在connectionDidFininshLoading方法調(diào)用后,將請(qǐng)求的數(shù)據(jù)自動(dòng)調(diào)給主線程
//帶有服務(wù)端回應(yīng)的狀態(tài)碼(200 代表成功,服務(wù)端能滿足客戶端請(qǐng)求;404 客戶端請(qǐng)求的資源服務(wù)端沒有找到;400 客戶端請(qǐng)求的語法錯(cuò)誤;500服務(wù)器錯(cuò)誤)
XML
/*1、xml數(shù)據(jù)是一種自上而下的樹形結(jié)構(gòu)的數(shù)據(jù),是客戶端與服務(wù)端進(jìn)行數(shù)據(jù)傳輸?shù)囊环N常用的數(shù)據(jù)格式。
*2、... 每個(gè)xml格式數(shù)據(jù)的最外層為根節(jié)點(diǎn),有且只有一個(gè)根節(jié)點(diǎn)。root 叫節(jié)點(diǎn)的標(biāo)題/ ...為節(jié)點(diǎn)的內(nèi)容
*3、進(jìn)行xml數(shù)據(jù)的解析,實(shí)質(zhì)上是通過解析手段獲取節(jié)點(diǎn)內(nèi)容的過程
*(面試常考)4、json(特點(diǎn):輕巧、傳輸效率高,冗余的數(shù)據(jù)少,可讀性不強(qiáng))xml (特點(diǎn):可讀性強(qiáng),擴(kuò)展性強(qiáng),冗余的數(shù)據(jù)比json的多)
*5、進(jìn)行xml數(shù)據(jù)解析,用GData第三方開源庫,比系統(tǒng)自帶的NSXMLParser要方便很多
*/