我正在開發一個應用程序,用戶可以在其中上傳照片並進行編輯(例如,提供效果,剪裁,旋轉等)。對於上傳和下載,我使用AFNetworking框架。禁用AFNetworking中的特定圖像緩存
我的問題是:當我編輯照片時,我上傳新版本到文件服務器。在應用程序中,我正在調整AFImageCache以保存對新(已編輯)照片的引用。當我關閉並再次打開應用程序時,舊圖像被加載。
所以我的問題是:除了AFImageCache iPhone使用的是否有任何其他緩存?如果是這樣,我怎麼能清除緩存中的圖像,以便重新啓動應用程序時從服務器獲取新圖像?
我看到正在對我的照片進行網絡請求,但是當我瀏覽器中的網址時,我得到了新圖像。不知何故,我的請求沒有收到新的圖像。這可能嗎? 在代碼中,我使用的唯一緩存是AFNetworking附帶的緩存,但是在發出請求之前手動清除了緩存,以確保它不在代碼中。 – Devos50 2012-08-13 17:19:15
服務器如何迴應您看到的請求?例如,它是一個304 HTTP代碼?如果單步執行網絡代碼,它實際上是否使用從服務器接收的數據? – JosephH 2012-08-13 17:49:06
@JosephH:iPhone內置了緩存。它通過AFNetworking的基礎NSURLRequest類暴露出來。查看[initWithURL:cachePolicy:timeoutInterval:]的文檔(https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSURLRequest_Class/Reference/Reference.html# // apple_ref/occ/clm/NSURLRequest/requestWithURL:cachePolicy:timeoutInterval :)方法。 – Codo 2012-08-13 19:07:48