Есть ли ограничение на длину содержимого для HTTPResponse?
Выполняя мои модульные тесты, я обнаружил, что на Android я не получаю полный документ Atom, в то время как код работает нормально для JSE.
URL-адрес: https://www.googleapis.com/buzz/v1/activities/@me/@consumption?max-results=25
Заголовки запроса: авторизация: [OAuth oauth_token="validToken", oauth_consumer_key="анонимный", oauth_version="1.0", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1282297108", oauth_sign_t_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_1505_5_5_5_5_5_1505_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5 validSignature"]
Код для создания HTTP-запроса
public static String send( HttpsURLConnection request )
throws BuzzIOException
{
StringBuffer response = null;
try
{
// Send request
request.connect();
// Read response
InputStream is = request.getInputStream();
response = new StringBuffer();
byte[] b = new byte[4096];
for ( int n; ( n = is.read( b ) ) != -1; )
{
response.append( new String( b, 0, n ) );
}
}
catch ( Exception e )
{
throw new BuzzIOException( e );
}
//TODO remove debug line, i could set log4j but it is not compatible with android
try{
Class<?> clazz = Class.forName("android.util.Log");
Method androidLog = clazz.getMethod("d", new Class[]{String.class,String.class});
androidLog.invoke(null, "BuzzIO",response.toString());
} catch (Exception e) {
System.out.println(response.toString());
}
return response.toString();
}
Ответ, который я получаю, является неверным фидом атомов, потому что он усекается. ожидаемая длина составляет около 86043 символов, но я получаю ответ только с 4435