Я столкнулся с довольно странной ошибкой. Я написал приложение для Android, которое загружает простой текстовый файл на сервер. Код для подключения следующий:
try {
URL = new URL(myURL);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setDoOutput(true);
connection.setDoInput(true);
connection.setRequestMethod("POST");
connection.setRequestProperty("Content-Type", "multipart/form-data; boundary="+"---");
DataOutputStream output = new DataOutPutstream(connection.getOutputStream());
output.writeBytes(<my post request>);
output.flush();
output.close();
connection.connect();
}
Когда я запускаю этот метод, почтовый запрос никогда не отправляется на сервер. На wireshark ничего не появляется, и если я смотрю в logcat, ошибок нет, и соединение устанавливается нормально, сообщение POST просто никогда не отправляется. Однако, если я добавлю простую строку сразу после connection.connect (), такую как:
connection.getResponseCode();
Внезапно сообщение POST отправляется без проблем. Что тут происходит? Требуется ли получить код ответа для отправки сообщения?