我正在开发一个iOS应用程序,它从我的服务器的json feed获取数据。解析字符串没问题...但是,我无法异步下载字符串然后缓存它。我找到了SDURLCache,但不知道如何实现它。什么是最好的方法。
答案 0 :(得分:2)
您可以将文件下载到磁盘(同步):
NSURL * url = [NSURL URLWithString:@"www.yourprovider.com/your.json";
NSData *file = [NSData dataWithContentsOfURL:url];
[file writeToFile:<your file path> atomically:YES];
对于异步操作,您应该使用NSURlConnection。打开连接后,
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:<your NSURL>];
[request setHTTPMethod:@"GET"];
NSURLConnection *conn = [NSURLConnection connectionWithRequest:request delegate:self];
[conn start];
您在此回调中收到数据:
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)_data {
//here you could write to a NSFileHandle ivar:
if (file) {
[file seekToEndOfFile];
} [file writeData:_data];
}