我尝试通过SDWebImage设置图像。但SDWebImage取消操作。我试图用Safari在Safari中获取此图像,Safari向我询问了证书。当我取消对话窗口时,我得到了这张图片。
问题是:我可以在不修改此库的情况下禁用SDWebImage证书验证吗?
答案 0 :(得分:1)
我花了很多时间来研究SDWebImage代码并找到解决方案。我想知道为什么文档没有明确说明如何做到这一点!
这是示例代码:
NSURL *url = ... <image url here>
UIImageView *imageView = ...
[imageView sd_setImageWithURL:url placeholderImage:nil options:SDWebImageAllowInvalidSSLCertificates progress:^(NSInteger receivedSize, NSInteger expectedSize) {
CGFloat percentage = ((CGFloat)receivedSize)/((CGFloat)expectedSize);
//Track progress here if needed.
} completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, NSURL *imageURL) {
...
}];
关键时刻是传递SDWebImageAllowInvalidSSLCertificates
选项。在内部,此选项将转换为共享图像下载器的适当选项。
希望能对您有所帮助,希望下次我再次遇到问题时能找到答案!
答案 1 :(得分:1)
使用
UIImageView_name.sd_setImage(with: URL(string: logo), placeholderImage: nil, options: .allowInvalidSSLCertificates)
代替
UIImageView_name.sd_setImage(with: URL(string: logo))
UIImageView_name
用于UIButton
UIButton_name.sd_setImage(with: URL(string: customer.getProfilePic()), for: .normal, placeholderImage: nil, options: .allowInvalidSSLCertificates, completed: nil)