Я пытаюсь получить ответ JSON, используя этот код. он хорошо работает для коротких ответов (от 20 до 30 строк), но обрезается посередине более длинных.
final HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
if (connection.getResponseCode() != 200) { throw new Exception(); }
BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String inline; StringBuilder response = new StringBuilder();
while ((inline = in.readLine()) != null) {
response.append(inline);
}
in.close();
Log.d(TAG, "getJson: {"+url.toString()+"}\n"+response.toString());
return response.toString();
Пример вывода logcat, показывающий отсечение json здесь .
Как я могу заставить его всегда загружать полный ответ?
Редактировать:
Из комментариев видно, что этот вопрос сгенерирован, а также дальнейшее тестирование, что нет ничего свойственный или отсутствующий в коде, который вызывает усечение сервера, но это проблема android конкретная c. Может ли кто-нибудь, A) определить, почему длинные ответы (используйте пример ссылки выше) усекаются специально на android (будь то код выше или в браузере android), и B) - (реальный вопрос) есть способ программно преодолеть проблему?