0

私は AfNetworking を使用しています。新しいデータを呼び出しますが、キャッシュされた結果が返され続けます。したがって、データを表示している VC にいる場合は、ルートに戻ってサーバーのデータを変更し、30 秒待ってから VC にプッシュすると、古いデータが表示されます。ブラウザで URL にアクセスすると、正しいデータが表示されます。アプリを再実行すると、データの変更が表示されます。

私のサーバーからの私の応答は、キャッシュ制御ヘッダーを送り返します: Cache-Control:max-age=10, public

私が言えることは、常に NSCachedURLResponse が返され、キャッシュがキャッシュ制御ポリシーをリッスンしていないことです。

AppDelegate で、SharedURLCache を設定しました。

NSURLCache *URLCache = [[NSURLCache alloc] initWithMemoryCapacity:8 * 1024 * 1024 diskCapacity:8 * 1024 * 1024 diskPath:nil];
[NSURLCache setSharedURLCache:URLCache];

URLRequest の設定方法:

NSURLRequest *request = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:30.0];

私は NSURLCache に関して他に何もしません。

何か案は?

ブーレンジャー

4

1 に答える 1