我试图连接到我服务器上的JSON文件(这是一个有效的JSON文件),但它返回NULL(jsonData为NULL而不是json)。该代码可以在其他网址中使用,但不适用于我的网站,并且在网络浏览器中加载时,每件事情都可以。
以下是我使用的代码。
NSData *jsonData = [NSData dataWithContentsOfURL:url];
NSError *error = nil;
id json = [NSJSONSerialization JSONObjectWithData:jsonData options:kNilOptions error:&error];
答案 0 :(得分:2)
使用以下方法获取使用您的网址加载数据时可能出错:
NSError *error = nil;
NSData *jsonData = [NSData dataWithContentsOfURL:url
options:NSDataReadingUncached
error:&error];
if (error) {
NSLog(@"error: %@", error);
} else {
// ... do stuff
}
在开发环境中发生的常见错误是当您呼叫的服务器位于本地网络上并且您尝试从外部网络上的设备进行访问时。确保不是这种情况。
答案 1 :(得分:1)
我认为问题是你将url作为字符串传递。将其作为网址传递。用它来转换成数据: -
NSData *jsonData =[NSData dataWithContentsOfURL:[NSURL URLWithString:yoururlString]];