在控制台中获取JSON字符串并将其存储在变量中

时间:2013-05-09 11:47:17

标签: objective-c xcode

如何在控制台中的一个变量中读取和存储JSON字符串...实际上当我从appdelegate调用index.html文件中的一个javascript函数时,我得到以下{{1结构响应,

JSON

我只需要设备令牌值来存储在一个变量中......我怎么能这样做...提前感谢

3 个答案:

答案 0 :(得分:1)

[
"registerDevice",
{
    "type": "7",
    "pushBadge": "1",
    "pushSound": "1",
    "enabled": "1",
    "dev‌iceToken": "e03d25f4f1bd40678cd693fe66fe7946ffdb03e1b23cfc5f9dc747fd5869fbcd",
    "pus‌ hAlert": "1"
}

试试这段代码:

NSArray *jsonArr = [responseStr JSONValue]; //your JSON response

NSDictionary *dicObj = (NSDictionary*)[jsonArr objectAtIndex:1];

NSString *deviceToken = [dicObj objectForKey:@"dev‌iceToken"];

这肯定对你有帮助。

如果对您有帮助,请标记。

答案 1 :(得分:0)

通常是大多数浏览器支持Json.parse()功能。 所以,你可以使用

var json = '{"result":true,"count":1}',
    abc = JSON.parse(json);

alert(abc.count);

您可以使用abc访问json响应值。 希望我已经给出了答案。

答案 2 :(得分:0)

使用NSJSONSerialization可以解析json响应。

试试这种方式,

NSString *str = @"[\"registerDevice\",{\"dev‌ iceToken\":\"e03d25f4f1bd40678cd693fe66fe7946ffdb03e1b23cfc5f9dc747fd5869fbcd\",\"pus‌ hAlert\":\"1\"}]";
NSError *jsonError = nil;
id allValues = [NSJSONSerialization JSONObjectWithData:[str dataUsingEncoding:NSUTF8StringEncoding]
                                                   options:0
                                                     error:&jsonError];
NSString *deviceToken = [allValues[1] objectForKey:@"dev‌ iceToken"];
NSLog(@"deviceToken: %@",deviceToken);

注意:取代'str'代替'json response'。