2012-02-17 96 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