2

我正在使用以下调用使用 KingFisher 下载图像。这工作正常,但问题是sddefault.jpg并非所有视频都可用,我必须改用它hqdefault.jpg。我从服务器获得 404 状态,但如果是 404 或 200,我该如何检查此状态?

我的代码:

self.searchResult.kf.setImage(with: URL(string: "https://i.ytimg.com/vi/\(String(describing: video.yt_id!))/sddefault.jpg"))
4

3 回答 3

2

您需要使用setImage带有完成块的版本。其中一个参数是一个错误,它将告诉您失败的原因。

于 2018-02-01T17:09:03.247 回答
2

差不多是这样,不确定KF是否有相同的方法,但基本上完成块是“完成:{}”之后的内容

self.searchResult.kf.setImage(with: URL(string: photo_url), completed: { (image: UIImage?, error: Error?, cache, url) in
                if error != nil {
                    self.imgSharedUser.image = self.user_image
                }
            })
于 2018-02-01T17:23:39.357 回答
2

你可以试试这个:

KingfisherManager.shared.retrieveImage(with: url, options: nil, progressBlock: nil, completionHandler: { image, error, cacheType, imageURL in
    print(image)
    print(error)
     print(imageURL )

})
于 2018-02-01T19:05:30.823 回答