POST-запрос используется для отправки данных на сервер; например, информация о клиенте, загрузка файла и т. д. с использованием HTML-форм.
HttpClient API предоставляет класс с именем HttpPost, который представляет запрос POST.
Следуйте приведенным ниже инструкциям, чтобы отправить запрос HTTP POST с использованием библиотеки HttpClient.
Шаг 1 — Создание объекта HttpClient
Метод createDefault () класса HttpClients возвращает объект класса CloseableHttpClient , который является базовой реализацией интерфейса HttpClient .
Используя этот метод, создайте объект HttpClient.
CloseableHttpClient httpClient = HttpClients.createDefault();
Шаг 2 — Создание объекта HttpPost
Класс HttpPost представляет запрос HTTP POST . Это отправляет необходимые данные и извлекает информацию о данном сервере, используя URI.
Создайте этот запрос путем создания экземпляра класса HttpPost и передачи строкового значения, представляющего URI, в качестве параметра его конструктору.
HttpGet httpGet = new HttpGet("http://www.tutorialspoint.com/");
Шаг 3 — Выполнить запрос на получение
Метод execute () объекта CloseableHttpClient принимает объект HttpUriRequest (interface) (т. Е. HttpGet, HttpPost, HttpPut, HttpHead и т. Д.) И возвращает объект ответа.
HttpResponse httpResponse = httpclient.execute(httpget);
пример
Ниже приведен пример, демонстрирующий выполнение HTTP-запроса POST с использованием библиотеки HttpClient.
import org.apache.http.HttpResponse; import org.apache.http.client.methods.HttpPost; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; public class HttpPostExample { public static void main(String args[]) throws Exception{ //Creating a HttpClient object CloseableHttpClient httpclient = HttpClients.createDefault(); //Creating a HttpGet object HttpPost httppost = new HttpPost("https://www.tutorialspoint.com/"); //Printing the method used System.out.println("Request Type: "+httppost.getMethod()); //Executing the Get request HttpResponse httpresponse = httpclient.execute(httppost); Scanner sc = new Scanner(httpresponse.getEntity().getContent()); //Printing the status line System.out.println(httpresponse.getStatusLine()); while(sc.hasNext()) { System.out.println(sc.nextLine()); } } }
Выход
Вышеуказанная программа генерирует следующий вывод.