2016-04-26 80 views
-1

我的API返回如下格式的响应---如何从格式{key:value}的JSON对象中获取值?

".expires" = "Tue, 10 May 2016 07:07:45 GMT"; 

".issued" = "Tue, 26 Apr 2016 07:07:45 GMT"; 
Contact = "{ContactID:1172588}"; 
User = "{\"CreatedByUser\":\"\",\"UserID\":\"8104\",\"FirstName\":\"Rokon\",\"LastName\":\"Uddin\"}"; 

*问题是,我可以分析“用户”,但无法解析“联系人”和关键的ContactID不能获得价值*

+0

没有服务器直接返回字符串? – Shubhank

+0

这是从api的实际响应? – Joshua

+2

这是什么格式? – vadian

回答

0

可以解析这样

//Contact = "{ContactID:1172588}"; 

NSString *contactid = yourDic[@"Contact"][@"ContactID"]; 

/**************更多细节代码*********/

NSDictionary *contactIdDic = [NSDictionary dictionaryWithObjectsAndKeys:@"1172588",@"ContactID", nil]; 

NSDictionary *contactDic = [NSDictionary dictionaryWithObjectsAndKeys:contactIdDic,@"Contact", nil]; 

NSData *jsonData = [NSJSONSerialization dataWithJSONObject:contactDic options:kNilOptions error:nil]; 
NSString *jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding]; 
NSLog(@"output:%@",jsonString);//output: {"Contact":{"ContactID":"1172588"}} 

NSString *contactid = contactDic[@"Contact"][@"ContactID"]; 
NSLog(@"contactid = %@",contactid); //output = 1172588 
+0

你可以添加更多的代码吗?什么是yourDic变量,你怎么得到它? –

+0

好吧,让我一分钟 – Jamil

+0

只是复制和粘贴代码的细节,并看到观察出来分析 – Jamil

0

您无法解析联系人,因为在逗号中您没有有效的JSON。我认为你试图把它解析为JSON。

您可以通过在联系增值逗号任何文字更正:

Contact = "{\"ContactID\":1172588}";