В настоящее время я занимаюсь разработкой библиотеки для проблем с битбакетом RESTful API.Я добился хорошего прогресса, и теперь я собираюсь заняться разделом Обновление проблемы , которая требует HTTP PUT Request.
Теперь я застрял из-за HTTP Error Code 411 Length Required
,После небольшого поиска, я нашел следующий пример кода :
// CORRECT: get a UTF-8 encoded byte array from the response
// String and set the content-length to the length of the
// resulting byte array.
String response = [insert XML with UTF-8 characters here];
byte[] responseBytes;
try {
responseBytes = response.getBytes("UTF-8");
}
catch ( UnsupportedEncodingException e ) {
System.err.print("My computer hates UTF-8");
}
this.contentLength_ = responseBytes.length;
Теперь мой вопрос: что именно измеряется?
- строка запроса
- строка запроса с кодировкой urlen
- только значения параметров ... ??
И является ли connection.setRequestProperty("Content-Length", String.valueOf(<mycomputedInt>));
подходящим способом установки атрибута длины содержимого?
Примеры приветствуются.Заранее спасибо.
edit:
Например, вы можете объяснить вычисления с помощью следующего примера curl из вики-записи bitbucket:
curl -X PUT -d "content=Updated%20Content" \
https://api.bitbucket.org/1.0/repositories/sarahmaddox/sarahmaddox/issues/1/