2016-04-26 92 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}";