问题描述
|
我正在开发一个iOS应用,该应用从我服务器的json供稿中获取其数据。解析字符串没有问题...但是,我在异步下载字符串然后将其缓存时遇到了麻烦。我找到了SDURLCache,但不知道如何实现它。做这个的最好方式是什么。
解决方法
您可以将文件下载到磁盘(同步):
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];
}