JSON NSNumber 返回错误

JSON NSNumber returning incorrectly

我从 JSON 和 Objective-C 开始,我已经从服务器检索了数据,并且得到了预期的 NSDictionary

例如,我的字典中有两个值。

lengthstart.

length return 符合预期,NSNumber268。但是,start 显然也是一个 NSNumber(我希望它是这样)正在丢弃一长串数字,就好像它的格式不正确一样。

例如start = 1423113951.

如何确定我接收到的数据类型?它被正确解析了吗?我应该如何处理它?

我知道 start 是一个数字,它应该 return 类似于 length 但是我得到的长数字在每次运行时几乎都是一样的,所以它显然不是正确格式化。

我通过简单地记录我从以下位置返回的 NSDictionary 来获得这些值:

NSMutableDictionary *json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];

一些额外的细节,这是我对数据的要求:

NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"http://secretAddress"]];
        NSData *data = [NSData dataWithContentsOfURL:url];

        NSError *error;
        NSMutableDictionary *json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];

NSLog(@"%@", json);

可以理解,这可能是服务器如何将它发回给我的,但目前我不知道它是如何发送的。

每当我在解析 JSON 数据时遇到问题,我要做的第一件事就是在我解析数字的代码行上放置一个断点,然后检查我的内容NSDictionary 项目:

如您在此示例中所见,XCode 报告我的 JSON 网络服务中的 NoteID 是一个 NSNumber,但很高兴让我将其值提取到 int.

因此,从这里开始:检查您的 Web 服务数据的内容,看看它是否为您指明了正确的方向。