Сегодня рассмотрим, как отправлять GET запросы в Java . Для отправки http запросов мы будем использовать библиотеку Apache HttpClient .

Отправка GET запросов в Java

Сегодня рассмотрим, как отправлять GET запросы в Java. Для отправки http запросов мы будем использовать библиотеку Apache HttpClient.

package ru.myrusakov.http;

import org.apache.http.HttpEntity;
import org.apache.http.HttpHeaders;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;

import java.io.IOException;

public class HttpClientGetRequest {

    public static void main(String[] args) throws IOException {

        CloseableHttpClient httpClient = HttpClients.createDefault();

        try {
            
            // создаем объект клиента
            HttpGet request = new HttpGet("https://myrusakov.ru");

            // добавляем заголовки запроса
            request.addHeader("Author", "MyRusakov.Ru");
            request.addHeader(HttpHeaders.USER_AGENT, "MyRusakov.HttpClient");

            CloseableHttpResponse response = httpClient.execute(request);

            try {

                // получаем статус ответа
                System.out.println(response.getProtocolVersion());              // HTTP/1.1
                System.out.println(response.getStatusLine().getStatusCode());   // 200
                System.out.println(response.getStatusLine().getReasonPhrase()); // OK
                System.out.println(response.getStatusLine().toString());        // HTTP/1.1 200 OK

                HttpEntity entity = response.getEntity();
                // если есть тело ответа
                if (entity != null) {
                    // возвращаем строку
                    String result = EntityUtils.toString(entity);
                    System.out.println(result);
                }

            } finally {
                // закрываем соединения
                response.close();
            }
        } finally {
            httpClient.close();
        }

    }

}