gpt4 book ai didi

ios - JSON 字符串不会被解析

转载 作者:可可西里 更新时间:2023-11-01 05:47:05 26 4
gpt4 key购买 nike

我正在尝试从网络服务中解析一个 JSON 字符串。传入的字符串如下所示:

{
"Faculty_Members": [
{
"ID": 3377,
"First_Name": "John",
"Last_Name": "Doe"
}
]
}

我的 IOS 代码如下所示:

NSURL *jsonUrl = [NSURL URLWithString:@"http://website/Service1.svc/Names"];
NSError *error = nil;
NSData *jsonData = [NSData dataWithContentsOfURL:jsonUrl options:kNilOptions error:&error];
NSMutableDictionary *jsonResponse = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingAllowFragments error:&error];
NSLog(@"%@",jsonResponse);

//parse out the json data
if([NSJSONSerialization isValidJSONObject:jsonResponse])
{
NSLog(@"YEP");
}else{
NSLog(@"NOPE");
}

日志将显示正确的 JSON 数据,但我一直在 isValidJsonObject 上收到“NOPE”。

Web 服务正在将数据作为数据类型“字符串”发回。这有什么区别吗?如果是这样,我应该将其发回什么数据类型?

任何想法将不胜感激!

最佳答案

您不使用 isValidJSONObject: 来测试有效的 JSON 字符串,您使用它来测试可以转换为 JSON 的对象;参见 the documentation :

isValidJSONObject:

Returns a Boolean value that indicates whether a given object can be converted to JSON data.

+ (BOOL)isValidJSONObject:(id)obj

Parameters:

obj
The object to test.


Return Value:

YES if obj can be converted to JSON data, otherwise NO.

相反,只需使用 JSONObjectWithData: 照常解析数据;如果失败,它将在 error 中返回一个 NSError

关于ios - JSON 字符串不会被解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9484194/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com