每当我尝试解析我的JSON文件时,我都会在控制台中收到此错误:
'NSInvalidArgumentException',原因:'data parameter is nil'
人们说它与网址和特殊字符有关但看起来像这样:
http://data.myurl.com/api/49/WELOG/KRF/ticker
有任何想法吗?
我的代码:
#define kBgQueue dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)
#define kLatestURL [NSURL URLWithString:@"http://data.myurl.com/api/49/WELOG/KRF/ticker"]
#import "ticker.h"
@implementation ticker
-(void) startTicker{
dispatch_async(kBgQueue, ^{
NSData * data = [NSData dataWithContentsOfURL:kLatestURL];
[self performSelectorOnMainThread:@selector(ticker:) withObject:data waitUntilDone:YES];
});
}
-(void) ticker:(NSData *) data{
NSError * error;
NSDictionary * json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:error];
NSArray * latestPrice = [json objectForKey:@"data"]; // under adult data
NSNumber * value = [(NSDictionary*)[latestPrice objectForKey:@"last_all_numbers"]
objectForKey:@"display"];
}
之前工作得很好......我可以在网络浏览器中访问JSON文件,它运行正常。
答案 0 :(得分:0)
当我打开kLatestURL
时,我看到了Failed to load page content
消息。所以你的JSON不在那个URL上。也许是因为一些失效日期。将JSON上传到其他地方,然后重试。