从服务器端访问JSON

时间:2011-11-18 09:50:48

标签: iphone json

我从服务器得到以下回复:

{"_license":false}

当我试图从那里_license出来时,它显示null。我试过这样:

NSString *items = [[parser objectWithString:[request responseString] error:nil] valueForKey:@"_license"];
NSLog(@"response server%@", items);

知道为什么?以及如何解决?

2 个答案:

答案 0 :(得分:1)

尝试分割你的代码,不要在一行中做所有事情。然后检查变量是否包含正确的值。

NSLog(@"Server response: %@",[request responseString]);
NSError * error = nil;

NSDictionary *response = [parser objectWithString:[request responseString] error:&error]

if (!response)( {
  NSLog( @"Error parsing JSON: %@", error);
  return;
}

NSLog(@"Dictionary: %@", response);

NSNumber *hasValidLicense = [response objectForKey:@"_license"];
NSLog(@"Has valid license: %@", hasValidLicense);

if ([hasValidLicense boolValue]){
   //Yes we have a valid license.
} else {
   // No valid license.
}

答案 1 :(得分:0)

用以下内容替换您的行:

BOOL items = [[[parser objectWithString:[request responseString] error:nil] valueForKey:@"_license"] boolValue];