Я пытаюсь хранить JSON, которое в JSON я получаю от следующего запроса ...Разбор JSON В JSON в Objective-C
NSURL *URL = [NSURL URLWithString:@"http://www.demo.com/server/rest/login?username=admin&password=123"];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:URL];
[request setHTTPMethod:@"GET"];
NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *task = [session dataTaskWithRequest:request
completionHandler:
^(NSData *data, NSURLResponse *response, NSError *error) {
if (error) {
// Handle error...
return;
}
if ([response isKindOfClass:[NSHTTPURLResponse class]]) {
NSLog(@"Response HTTP Status code: %ld\n", (long)[(NSHTTPURLResponse *)response statusCode]);
NSLog(@"Response HTTP Headers:\n%@\n", [(NSHTTPURLResponse *)response allHeaderFields]);
}
NSString* body = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSLog(@"Response Body:\n%@\n", body);
}];
[task resume];
В результате JSON получить от тела является следуя и, как вы видите, в JSON есть JSON, как я могу хранить , что JSON в NSDictionary, поскольку вы можете видеть, что JSON находится между кавычками.
[
{
tag: "login",
status: true,
data:
"
{
"userID":1,
"name":"John",
"lastName":"Titor",
"username":"jtitor01",
"userEmail":"[email protected]",
"age":28,
}
"
}
]
'NSArray * TopLevel = [NSJSONSerialization JSONObjectWithData: Параметры данных: 0 ошибок: ноль]; NSString * lowLevel = [[topLevel firstObject] objectForKey: @ "data"]; NSData * lowLevelData = [lowLevel dataUsingEncoding: NSUTF8StringEncoding]; NSDictionary * final = [NSJSONSerialization JSONObjectWithData: lowLevelData options: 0 error: nil]; 'или что-то подобное может сделать трюк. – Larme
Да, это сработало, спасибо! – xzrudy