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()
使用 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()