У меня есть фрагмент кода Java для передачи массива байтов на HTTP-сервер:
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setDoInput(true);
connection.setDoOutput(true);
connection.setUseCaches(false);
connection.setRequestMethod("POST");
connection.setRequestProperty("Connection", "Keep-Alive");
connection.setRequestProperty("Content-Type", "multipart/form-data; boundary="
+ myBoundary);
connection.setRequestProperty("Content-Length", 1024);
Я использовал этот код для передачи массива байтов, размер которого больше 1024. Он работал хорошо. Но фактическое сообщение HTTP (захваченное Wireshark) показывает, что значение Content-Length - это фактический размер, а не 1024. Почему?
Я поискал в спецификации HTTP, но не нашел намеков. Я не использовал кодирование передачи или кодирование передачи.