Я пытался получить JSONObject из ответа HTTP.HTTPResponse как JSON в Java
try
{
GetMethod postMethod = new GetMethod();
postMethod.setURI(new URI(url, true));
postMethod.setRequestHeader("Accept", "application/json");
httpClient.executeMethod(postMethod);
String resp=postMethod.getResponseBodyAsString();
org.json.JSONTokener tokener = new org.json.JSONTokener(resp);
finalResult = new org.json.JSONArray(tokener);
return finalResult;
}
Но я получил предупреждение во время выполнения, как
Идущий в буфер тела ответа большого или неизвестного размера. Рекомендуется использовать
getResponseBodyAsStream
.
Должен ли я получить ответ как поток, предложенный JVM? Если да, то как я могу разобрать JSON?
Просто прочитать содержимое в 'байт []', 'свою очередь, что байт []' в 'String' (в зависимости от кодировки) и разобрать, что' String' как JSON – fge
Я хотел бы надеяться, что один из нескольких десятков пакетов JSON для Java может читать напрямую из потока. –