我正在寻找将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“字符0周围的值无效。” UserInfo = {NSDebugDescription =字符0周围的值无效。}
第二种方法,我得到与第一种方法相同的错误:
FAILURE:Error Domain = NSCocoaErrorDomain Code = 3840“字符0周围的值无效。” UserInfo = {NSDebugDescription =字符0周围的值无效。}
第三种方法,当我打印这个字符串时,它是零,所以显然也不起作用。
请记住,我使用Swift 2和Alamofire发出POST请求(以JSON编码)。实现我想做的事情的正确方法是什么?
答案 0 :(得分:0)
这是我猜的alamorefire错误。在你的邮政编码中,如果你正在打电话
Alamorefire.request().responseJSON()
试试这个。
Alamorefire.request().responseString()