我的图像是否使用Alamofire和AlamofireImage自动缓存

时间:2017-09-11 15:54:59

标签: alamofire alamofireimage

AFImage新手。我不确定这是否是抓取图像并将其缓存的正确方法。似乎每次运行时都没有点击服务器,但我不确定它是否被缓存?我很幸运?它似乎我在下面使用的语法已过时......

任何评论都表示赞赏。

  Alamofire.request("https://www.website.com/advertising/images/"+whichad!)
    .responseImage { response in                                 

                    if let image = response.result.value {
                        //print("image downloaded: \(image)")
                        self.ad1image.image = image
                    }
                    else{
                        self.ad1image.image = UIImage(named: "TWITlogoSQ")
                    }
                }`

1 个答案:

答案 0 :(得分:3)

使用Alamofire.request("url").responseImage加载图像时,下载的图像将仅使用URLCache进行缓存,其行为取决于Cache-Control标头,URLCache有一些限制

最好使用af_setImage()。此方法使用URLCachecombinationAutoPurgingImageCache来创建非常强大的高性能图像缓存系统。

例如

import AlamofireImage

...

ad1image.af_setImage(
    withURL: URL(string:"https://www.website.com/advertising/images/"+whichad!)!,
    placeholderImage: UIImage(named: "TWITlogoSQ")
)