Я пытаюсь преобразовать UIImage в строку base64 с целью его загрузки на серверный сервер.Преобразование UIImage в base64 string в swift
Однако преобразование код я нашел в этой статье (которая должна быть собственная реализация от Apple) генерирует недопустимую строку:
Convert between UIImage and Base64 string
После загрузки, я получаю это изображение:
[Failty изображение, которое декодируется из прошивки преобразована Base64 1
Вместо этого:
[Правильное изображение декодируется из онлайна-инструмента преобразования base64 2
Я проверил результаты закачивать с помощью почтальону и задняя конец ручку действительного base64 изображения правильно, поэтому я сузил ошибку вплоть до самого преобразования base64. Вот мой код:
public extension UIImage
{
func base64Encode() -> String?
{
guard let imageData = UIImagePNGRepresentation(self) else
{
return nil
}
let base64String = imageData.base64EncodedStringWithOptions(NSDataBase64EncodingOptions.Encoding64CharacterLineLength)
let fullBase64String = "data:image/png;base64,\(base64String))"
return fullBase64String
}
}
Любая идея, как я могу исправить мой выход base64 на устройстве IOS, прежде чем я загрузить его на сервер?
Это выглядит абсолютно правильно для меня, что заставляет вас думать, что это конверсия? Вы проверили сервер сервера преобразования? –
Попробуйте 'base64EncodedStringWithOptions ([])'. Возможно, вам также придется заменить «+», «/» и «=», сравнить http://stackoverflow.com/a/39376534/1187415. –