从URL加载NSMutableDictionary

时间:2010-08-19 23:21:16

标签: iphone download

我目前正在这样做:

NSMutableDictionary *dict = [[NSDictionary alloc] initWithContentsOfURL: [NSURL URLWithString:@"http://mysite/mypage.php"]];

除了返回的数据非常大,并且看起来超时之外,这很棒。我怎么能绕过这个?

提前致谢。

3 个答案:

答案 0 :(得分:1)

我不是使用NSDictionary来管理下载的忠实粉丝。我可能会尝试类似的东西:

NSURL *url = [NSURL URLWithString:@"http://mysite/mypage.php"];
NSURLRequest *request = [NSURLRequest requestWintURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60.0];
NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];

现在,如果数据不是NULL,则保存到本地文件。然后使用initWithContentsOfFile:方法使用该文件的内容加载字典。

如果仍然有超时,可以尝试更大的timeoutIntervals。

答案 1 :(得分:0)

NSURLRequest(或NSMutableURLRequest)和NSURLConnection。

答案 2 :(得分:0)

在像initWithContentsOfURL这样的便利方法中,你无法控制超时等事情。它们在我的情况下很好,但听起来你需要使用更低级别的NSURLConnectionNSURLRequest来从服务器加载数据。网上有很多例子。