【发布时间】:2017-04-25 10:04:36
【问题描述】:
所以我向我们的服务器发出了一个简单的 GET 请求,我得到的响应代码如下:
[[[NSURLSession sharedSession] dataTaskWithRequest:request
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error)
{
NSString *dataString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSLog(@"dataString: %@", dataString);
NSData *jsonData = [dataString dataUsingEncoding:NSUTF8StringEncoding];
NSDictionary *jsonContent = (NSDictionary*)[NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableContainers error:&error];
NSNumber * success = (NSNumber *)[jsonContent objectForKey: @"user_records_exist"];
if([success boolValue] == YES)
{
NSLog(@"true");
NSLog(@"success: %d", [success boolValue]);
} else {
NSLog(@"false");
NSLog(@"failure: %d", [success boolValue]);
}
}] resume];
而我得到的日志如下:
dataString: "{\"user_records_exist\": true}"
false
failure: 0
我不确定我做错了什么。如何获取"user_records_exist" 键的值?
谢谢
【问题讨论】:
-
试试这个
[NSString stringWithFormat:@"%@",[jsonResponse objectforKey:@"user_records_exist"]]; -
if([success boolValue] == YES) 为什么要进行显式相等检查?只需写“if([success boolValue])”
标签: ios objective-c nsdictionary nsjsonserialization