Я пытаюсь отправить строку в кодировке base64 в растровое изображение на Android.Закодированная строка будет начинаться с «data: image / jpeg; base64,»
Я использую следующий метод:
public String getStringImagen(Bitmap bmp){
String encodedDataString = "data:image/jpeg;base64,";
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bmp.compress(Bitmap.CompressFormat.JPEG, 100, baos);
byte[] imageBytes = baos.toByteArray();
String encodedImage = Base64.encodeToString(imageBytes, Base64.DEFAULT);
return encodedDataString + encodedImage;
}
Я вызываю и назначаю таким образом на метод
String photo = getStringImagen(bitmap);
Через JSONObject я отправляю сгенерированную строку
jsonObject.put("FOTO",photo);
Авторизация заголовка отправляется
@Override
public Map<String, String> getHeaders()
{
Map<String, String> headers = new HashMap<String, String>();
headers.put("Content-Type", "application/json; charset=utf-8");
headers.put("Authorization", "Bearer " + token);
return headers;
}
Строка, которая отправляется на сервер, генерируется в этомway.
data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD....
Когда все правильные данные сгенерированы, они отправляются на сервер, но ответом является поле фотографии, поскольку null не сохраняет цепочку, отправляемую для сохранения.Надеюсь, вы поможете мне решить эту небольшую проблему.С уважением