2012-02-17 61 views
1

我想爲登錄頁面創建解析器。我有一個在json中給出響應的url。當不在其登錄給出響應爲:從json中的URL中檢索到的解析響應

{"status":0,"msg":"Email is Wrong!"} 

,並在其中loggged時給出了:

{"status":1,"msg":"Session is active","session_id":"lp47ngp9hlqtrkunjirqa7ijg5","user_id":"13"} 

我不知道如何開始這一點。請幫助... 在此先感謝!

+0

可能重複的[如何在JavaScript中解析json](http://stackoverflow.com/questions/4935632/how-to-parse -json-in-javascript) – Matt 2012-02-17 11:10:42

回答

0

如果您使用jquery和jquery.ajax/jquery.get等,您將收到一個JavaScript對象形式的響應,您可以使用它來做出相應的反應。

jquery是一個非常廣泛使用的優秀的JavaScript庫。這是一種事實上的標準。

只要谷歌它,你會發現很多信息,教程,書籍。在Stack Overflow中,你會發現很多關於這個主題的資料。

+0

沒有提到在問題中使用jQuery,並且不使用jQuery來解析JSON *並不困難。 – Matt 2012-02-17 11:16:15

+0

@Matt但也沒有提到不使用它。 – unludo 2012-02-17 11:17:28

1

不知道我是否在這裏理解一個真正的問題,但據我瞭解,嘗試使用jquery ajax從url中檢索您的json。在調用ajax時,會有一個名爲success的參數,它帶有一個帶有一個參數的函數。該參數將是從url中檢索的數據。只需執行obj = eval(data),您的數據將被解析,您可以訪問狀態obj.status

-1

您可以使用jQuery的parseJSON方法將JSON字符串解析爲Javascript對象 http://api.jquery.com/jQuery.parseJSON/

+0

如果您使用jquery.ajax,則會爲您完成轉換。不需要這樣做。 – unludo 2012-02-17 11:16:17

+0

沒有提到在問題中使用jQuery,並且不使用jQuery解析JSON *並不困難。 – Matt 2012-02-17 11:16:23

+0

但你建議jquery! (我沒有投票給你,但是) – unludo 2012-02-17 11:18:08

1

使用普通的JavaScript,你可以使用JSON.parse到JSON字符串轉換爲JavaScript對象。

喜歡的東西:

var response = JSON.parse([yourJsonString]); 
if (response.session_id) { 
    // logged in, proceed 
} else { 
    // not logged in, act accordingly 
} 

JSON.parse是現代瀏覽器。對於較舊的瀏覽器,您需要包含一個JSON解析器,如this one(使用json2.js)

+0

使用冰和JSON <腳本類型=」 文本/ JavaScript的」字符集= 「UTF-8」> $ .getJSON( 'URL',功能(數據){ 警報(data.status); // 1 警報(數據。MSG); //房間清單 });

這是我工作的代碼 – 2012-02-17 11:34:40