ObjectiveC + SDWebImageView:错误域= NSURLErrorDomain代码= 400“操作无法完成。(NSURLErrorDomain错误400.)”

时间:2016-02-04 08:52:57

标签: ios objective-c uiimageview uiimage sdwebimage

我从服务器获得了一个安全的图片网址,如下所示:

https://jointeffort-dev-test.s3.amazonaws.com/11316b6e-9824-418a-869e-ca4c1a453145.jpg?AWSAccessKeyId=AKIAJITHUU5FSWYPBZIA&Expires=1454576763&Signature=KogwFiMdpB%2B5scNI0MkDin7jTmE%3D

我正在尝试使用 SDWebImageView 加载带有该网址的图片视图,我收到以下错误

Error Domain=NSURLErrorDomain Code=400 "The operation couldn’t be completed. (NSURLErrorDomain error 400.)"

我可以从正常的imageURL加载图像,但我无法加载这种具有上述URL的AccessKeyId的URL。

任何人都可以帮助我..提前致谢。

我已经尝试了以下代码..但我没有在图像视图上获取图像(URL工作正常)

代码1:

[imageView sd_setImageWithURL:[NSURL URLWithString:imageURL] completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, NSURL *imageURL)
    {
        if (error)
        {
            NSLog(@"error and image url  %@, %@",error,imageURL);
        }
        else
        {
            NSLog(@"image success = %@",image);
        }
    }];

代码2:

[imageView sd_setImageWithURL:[NSURL URLWithString:imageURL]
                 placeholderImage:[UIImage imageNamed:@"placeholder"]
                          options:SDWebImageRefreshCached];

1 个答案:

答案 0 :(得分:0)

设置图片时,请使用 SDWebImageRetryFailed 作为选项。 我也遇到过这个问题。此错误表示该图片的拒绝访问。 这是因为,您无法从亚马逊服务器访问图像,或者服务器上不存在图像本身。 您还可以通知您的服务器团队从亚马逊服务器发送确切的图像URL。