Upload/download UIImage 到 Parse.com 使用 REST API 最佳实践

Upload/download UIImage to Parse.com using REST API best practice

使用 REST API 将图像上传和下载到 Parse.com 的最佳方式是什么?

我尝试编码为 base64,但似乎无法将其转换回 UIImage 我得到 JSON NSData。尝试解码回来但没有成功。

经过测试和大量研究,我找到了解决方案:

UIImage 转换为 NSData 后,您需要编码为 base64 字符串,然后使用 REST API 将图像上传到 Parse.com 参见 Using Swift in an iOS Application to Upload an Image to a RESTful API.

下一阶段,当您向 Parse.com 调用 GET 请求时,使用下面的代码解码 base64 并将其转换回 UIImage.

let task = session.dataTaskWithRequest(request, completionHandler: {
        (data, response, error) in
        if (error == nil) {
            do {
                let imageJSONDictionary = try NSJSONSerialization.JSONObjectWithData(data!, options: []) as? [String:AnyObject]

                let base64String = imageJSONDictionary!["imageKey"] as! String

                let imageData:NSData = NSData(base64EncodedString: base64String, options: NSDataBase64DecodingOptions(rawValue: 0))!

                 self.imageView.image = UIImage(data: imageData)
            } catch {

            }
        } else {
            print("ERROR: \(error)")
        }
    })
    task.resume()