Retrofit or Volley - Опубликовать JSON, содержащий изображения, закодированные в виде строки base64 - PullRequest
0 голосов
/ 15 января 2019

У меня есть сервер, API которого ожидает JSON в качестве ввода. например,

{
    "title":"Body Lotion",
    "Category":"Beauty Product",
    "image1":"base64encodedImageString1",
    "image2":"base64encodedImageString2",
    "image3":"base64encodedImageString3",
    "image4":"base64encodedImageString4"
}

Моя проблема заключается в том, что полный запрос успешно выполняется через почтальона, но завершается неудачно при отправке с Retrofit или Volley.

Тот же запрос успешно выполняется при модификации и залпе, если параметры изображения удалены или строки base64 заменены на короткую строку. Может ли это быть проблемой с длиной запроса? Retrofit, Volley или OkHttp3 ограничивают размер запроса json?

Есть ли решение для этого без изменения серверной части? Я исследовал, чтобы попытаться получить точное объяснение этого поведения напрасно. Пожалуйста, сообщите.

Я получаю ошибку;

java.io.IOException: unexpected end of stream on Connection
at okhttp3.internal.http1.Http1Codec.readResponseHeaders(Http1Codec.java:208)
at okhttp3.internal.http.CallServerInterceptor.intercept(CallServerInterceptor.java:88)
...
Caused by: java.io.EOFException: \n not found:
...