J'ai essayé d'obtenir la mise en cache d'un fichier que je télécharge à partir d'une URL. Le fichier a une taille d'environ 5 Mo. ci-dessous est l'en-tête que j'obtenir de cette URL du fichier:Comment mettre en cache une demande de téléchargement de fichier à l'aide d'Alamofire?
Content-Type : application/x-zip-compressed
Content-Length : 4088083
Expires : Sun, 24 Jun 2018 20:10:51 GMT
Etag : "1e2ec46bcg24f13"
X-Powered-By : ASP.NET
Last-Modified : Thu, 22 Jun 2017 11:21:48 GMT
Accept-Ranges : bytes
Server : Microsoft-IIS/8.0
Date : Sat, 24 Jun 2017 20:10:48 GMT
Cache-Control : public,max-age=31536000
J'utilise comme suit pour créer la demande de téléchargement:
var request = URLRequest(url: URL(string: downloadUrl)!, cachePolicy: URLRequest.CachePolicy.returnCacheDataElseLoad, timeoutInterval: 120)
request.addValue("public", forHTTPHeaderField: "Cache-Control")
téléchargements de fichiers avec succès mais il n'est pas mis en mémoire cache. Lorsque je me déconnecte et que j'essaie de télécharger, j'obtiens 'La connexion Internet semble être hors ligne. 'erreur.
J'ai essayé de changer Urlcache comme ci-dessous de AppDelegate didFinishLaunch
let urlCache = URLCache(memoryCapacity: 4 * 1024 * 1024, diskCapacity: 20 * 1024 * 1024, diskPath: nil)
URLCache.shared = urlCache
Mais pas de chance. Merci d'avance.