Класс HttpRequest
Класс HttpRequest представляет собой неизменяемый
HTTP запрос, который можно отправить на сервер
с помощью клиента HttpClient.
Экземпляр класса создается с помощью билдера,
получаемого методом newBuilder.
В билдере мы задаем URI запроса методом uri,
HTTP метод (GET, POST, PUT, DELETE) и другие параметры,
такие как заголовки и тело запроса. После настройки
вызывается метод build, который возвращает
готовый объект HttpRequest.
Синтаксис
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://example.com"))
.GET()
.build();
Пример
Давайте создадим GET запрос и выведем его метод и URI:
import java.net.URI;
import java.net.http.HttpRequest;
public class Main
{
public static void main(String[] args)
{
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://example.com"))
.GET()
.build();
System.out.println(request.method());
System.out.println(request.uri());
}
}
Результат выполнения кода:
"GET"
"https://example.com"
Пример
Давайте создадим POST запрос с телом и заголовком:
import java.net.URI;
import java.net.http.HttpRequest;
public class Main
{
public static void main(String[] args)
{
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://example.com"))
.header("Content-Type", "text/plain")
.POST(HttpRequest.BodyPublishers.ofString("abcde"))
.build();
System.out.println(request.method());
System.out.println(request.headers().firstValue("Content-Type").get());
}
}
Результат выполнения кода:
"POST"
"text/plain"
Смотрите также
-
класс
HttpClient,
который отправляет HTTP запросы -
класс
HttpRequest.Builder,
который создает экземпляры HttpRequest -
класс
HttpResponse,
который представляет ответ сервера -
класс
HttpRequest.BodyPublishers,
который создает тело запроса