РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
1112 of 1163 menu

Метод build

Метод build класса HttpRequest завершает построение HTTP-запроса и возвращает готовый объект HttpRequest. Он вызывается у объекта HttpRequest.Builder после того, как в билдер были переданы все необходимые параметры: URI, метод запроса, заголовки, тело и таймаут. Метод не принимает параметров и возвращает новый неизменяемый экземпляр HttpRequest, который затем можно передать в методы send или sendAsync класса HttpClient.

Синтаксис

HttpRequest request = builder.build();

Пример

Давайте создадим простой GET-запрос с помощью билдера и соберём его методом build:

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); } }

Результат выполнения кода:

https://example.com GET

Пример

Давайте добавим к запросу заголовок и тело, а затем соберём его методом build:

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/api")) .header("Content-Type", "application/json") .POST(HttpRequest.BodyPublishers.ofString("{\"key\":\"value\"}")) .build(); System.out.println(request.method()); System.out.println(request.uri()); System.out.println(request.headers().map()); } }

Результат выполнения кода:

POST https://example.com/api {content-type=[application/json]}

Пример

Давайте соберём запрос с таймаутом и выведем его параметры:

import java.net.URI; import java.net.http.HttpRequest; import java.time.Duration; public class Main { public static void main(String[] args) { HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://example.com")) .timeout(Duration.ofSeconds(10)) .GET() .build(); System.out.println(request.timeout().get().getSeconds()); System.out.println(request.method()); } }

Результат выполнения кода:

10 GET

Смотрите также

  • класс HttpRequest,
    который представляет HTTP-запрос
  • класс HttpRequest.Builder,
    который используется для создания запросов
  • метод newBuilder,
    который создаёт новый билдер запроса
  • метод send,
    который отправляет собранный запрос
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить