IOS JSON,XML

用系統(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要方便很多

*/

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 134,991評(píng)論 19 139
  • JSON JSON和XML都是需要解析的 JSON是一種輕量級(jí)的數(shù)據(jù)格式,一般用于數(shù)據(jù)交互服務(wù)器返回給客戶端的數(shù)據(jù)...
    JonesCxy閱讀 1,883評(píng)論 2 10
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,556評(píng)論 25 708
  • 今日上午手臂上的痂被我扒拉下來了。從7月6號(hào)早上摔傷到今天7月27號(hào),整整休養(yǎng)了22天,最后兩個(gè)痂被我扒拉掉了,胳...
    我的草信閱讀 133評(píng)論 0 0
  • 一般人的印象中,病房是冷冰冰的,充滿消毒水的味道,每天看著醫(yī)生護(hù)士穿梭,腳步急匆匆,感覺生命都被勒緊,隨時(shí)會(huì)消失。...
    只喝大麥茶的年紀(jì)閱讀 315評(píng)論 0 0