我希望将 UIImage 转换为 NSData(这部分有效),然后将该 NSData 编码为字符串,以便我可以通过 Alamofire POST 请求将其存储到我的数据库中。
这是我到目前为止的代码以及我在 Swift 2 中尝试过的不同编码方法:
let a = spaceImage.image
let imageData = UIImagePNGRepresentation(a!)
//First method
let base64String = imageData!.base64EncodedStringWithOptions(.Encoding64CharacterLineLength)
//Second method
let base64String2 = imageData!.base64EncodedStringWithOptions(NSDataBase64EncodingOptions(rawValue: 0))
//Third method
let base64String3 = String(data: imageData!, encoding: NSUTF8StringEncoding)
因此,每种方法都有一个特定的问题。
第一种方法,我得到这个错误:
FAILURE: Error Domain=NSCocoaErrorDomain Code=3840 "Invalid value around character 0." UserInfo={NSDebugDescription=Invalid value around character 0.}
第二种方法,我得到与第一种方法相同的错误:
FAILURE: Error Domain=NSCocoaErrorDomain Code=3840 "Invalid value around character 0." UserInfo={NSDebugDescription=Invalid value around character 0.}
第三种方法,当我打印这个字符串时,它是 nil ,所以这显然也不起作用。
请记住,我使用 Swift 2 和 Alamofire 来发出 POST 请求(以 JSON 编码)。实现我想要做的事情的正确方法是什么?
最佳答案
我猜这是alamorefire错误。如果您打电话,请在您的邮政编码中
Alamorefire.request().responseJSON()
试试这个。
Alamorefire.request().responseString()
关于ios - 无法成功编码 UIImage 并存储在数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34552818/