Запрос Android HTTP PUT возвращает ошибку 411 только на Android 2.1

У меня есть приложение, которое отправляет HTTP PUT на веб-сервер. Код выглядит следующим образом:

  URL url = new URL(urlStr + "?" + encodedParameters);
  HttpURLConnection connection = (HttpURLConnection) url.openConnection();
  connection.setRequestMethod("PUT");
  connection.setRequestProperty("Content-Length", "0");

Когда я пробую это на Android 2.1, я получаю ошибку 411 («Требуется длина»).

На Android 2.3.3 и выше я возвращал ту же ошибку 411, пока не добавил это последнее свойство «Content-Length». Но это все еще происходит на Android 2.1.

Кто-нибудь знает, что здесь может происходить?


person Cruinh    schedule 20.11.2012    source источник


Ответы (1)


Не уверен, что это сработает, но, возможно, стоит попробовать установить «Content-Length», как показано ниже:

connection.setRequestProperty("Content-Length", Integer.toString(encodedParameters.getBytes().length));
person marcbest    schedule 20.11.2012
comment
разницы нет, боюсь - person Cruinh; 21.11.2012