【问题标题】:How do I update my imageResponseSerializer from Alamofire to the 3.0 version?如何将我的 imageResponseSerializer 从 Alamofire 更新到 3.0 版本?
【发布时间】:2015-10-08 19:22:40
【问题描述】:

我有一个按照本教程构建的 imageResponseSerializer:http://www.raywenderlich.com/85080/beginning-alamofire-tutorial

老实说,我真的不知道它是如何工作的,所以我想知道是否有人可以帮助我将其更新为可以与 Alamofire 3.0 一起使用的东西。这是我的代码:

extension Alamofire.Request {

class func imageResponseSerializer() -> GenericResponseSerializer<UIImage> {
    return GenericResponseSerializer { request, response, data in

        guard let validData = data else {
            let failureReason = "Data could not be serialized. Input data was nil."
            let error = Error.errorWithCode(.DataSerializationFailed, failureReason: failureReason)
            return .Failure(data, error)
        }

        if let image = UIImage(data: validData, scale: UIScreen.mainScreen().scale) {
            return Result<UIImage>.Success(image)
        } else {
            return .Failure(data, Error.errorWithCode(.DataSerializationFailed, failureReason: "Unable to create image"))
        }

    }
}

    func responseImage(completionHandler: (NSURLRequest?, NSHTTPURLResponse?, Result<UIImage>) -> Void) -> Self {
        return response(responseSerializer: Request.imageResponseSerializer(), completionHandler: completionHandler)
    }
}

谢谢

【问题讨论】:

  • 好吧,我只想从我正在检索的数据中创建一个 UIImage。没什么特别的。

标签: ios swift alamofire


【解决方案1】:

您应该改用AlamofireImage,而不是构建自己的图像响应序列化。我们建造了它,因此您不必这样做! ?

【讨论】:

  • 是的,这就是我最终所做的。使用起来并不难。谢谢。
猜你喜欢
  • 1970-01-01
  • 2019-03-30
  • 1970-01-01
  • 2021-08-15
  • 1970-01-01
  • 1970-01-01
  • 2013-11-23
  • 1970-01-01
  • 2021-11-09
相关资源
最近更新 更多