これが取引です。私は最近、次のコードを使用して開始時にいくつかのファイルをダウンロードするために AFNetworking を使用し始めました。
NSMutableURLRequest* rq = [api requestWithMethod:@"GET" path:@"YOUR/URL/TO/FILE" parameters:nil];
AFHTTPRequestOperation *operation = [[[AFHTTPRequestOperation alloc] initWithRequest:rq] autorelease];
NSString* path=[@"/PATH/TO/APP" stringByAppendingPathComponent: imageNameToDisk];
operation.outputStream = [NSOutputStream outputStreamToFileAtPath:path append:NO];
[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
NSLog(@"SUCCCESSFULL IMG RETRIEVE to %@!",path)
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
// Deal with failure
}];
私のパスは実際にパス変数に差し込まれています(申し訳ありませんが、実際にテキストをパスタにコピーするのに適切なコンピューターではありませんが、パスが異なる場合は上記とまったく同じです)
そして、すべてがうまくいっています!ファイルが正常にダウンロードされ、すべてが取得されています。私の現在の問題は、キャッシングを機能させようとしていることですが、多くの問題があります。基本的に、AFNetworking 2.0 の時点でクライアント側で実際に何をしなければならないかはわかりません。NSURlCache を設定する必要はありますか? 要求操作でキャッシュ タイプ ヘッダーを別の方法で設定する必要がありますか? 完全に組み込まれているのではないかと思いましたが、ファイルに変更がなくても、コードを実行するたびに 200 のステータスを受け取ります。NSUrlCache を使用する必要がある場合、手動で成功ブロック requestoperation に e-tag を保存し、それをフィードバックする必要がありますか? 進行方法についての助けをいただければ幸いです。みんなありがとう!