Выполнение POST запроса

125
27 ноября 2021, 07:00

Есть код, который выполняет POST запрос по указанной ссылке. Код полностью рабочий.

public static void main(String[] args) throws Exception {
    URL api = new URL("http://site.com/script.php");
    Map<String, String> parameters = new HashMap<>();
    parameters.put("parameter1", "value1");
    parameters.put("parameter2", "value2");
    parameters.put("parameter3", "value3");
    String query = parameters.keySet()
            .stream()
            .map(parameterName -> parameterName + '=' + parameters.get(parameterName))
            .collect(Collectors.joining("&"));
    HttpURLConnection connection = (HttpURLConnection) api.openConnection();
    connection.setRequestMethod("POST");
    connection.setRequestProperty("Content-length", String.valueOf(query.length()));
    connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
    connection.setRequestProperty("User-Agent", "Mozilla/5.0");
    connection.setDoOutput(true);
    connection.setDoInput(true);
    DataOutputStream output = new DataOutputStream(connection.getOutputStream());
    output.writeBytes(query);
    output.close(); //пробовал flush - ничего не отправляет.
    connection.getInputStream();
}

Меня смущает то, что если я не вызову connection.getInputStream();, то запрос не будет выполнен. Я считаю, что это не нормально. Как это делать правильно?

READ ALSO
Вывод переменной на странице из класса

Вывод переменной на странице из класса

Всем доброго дняПомогите пожалуйста, не получается вывести на странице jspx результат запроса из java класса

91
Как уменьшить вложенность кода

Как уменьшить вложенность кода

У меня есть такой методНо у него слишком высокая вложенность

91
Как создать музыкальный плеер на Java?

Как создать музыкальный плеер на Java?

есть идея создать музыкальный плеер на Java/SwingСуть будет вот в чем: 1)Можно будет проигрывать музыку на локальной машине

173
Как будет работать программа?

Как будет работать программа?

Подскажите, пожалуйста, зачем так пишут и как будет работать программа?

182