Java : HttpRequest.Builder con ejemplos
HttpRequest.Builder (Java SE 21 & JDK 21) en Java con ejemplos.
Encontrará ejemplos de código en la mayoría de los métodos de HttpRequest.Builder.
Nota :
- Este artículo puede utilizar software de traducción para su comodidad. Consulte también la versión original en inglés.
Summary
Un constructor de solicitudes HTTP. (Traducción automática)
final var uri = URI.create("https://example.com/");
final var builder = HttpRequest.newBuilder(uri);
final var request = builder
.POST(HttpRequest.BodyPublishers.ofString("XYZ"))
.header("Content-Type", "text/plain")
.header("Content-Language", "en")
.timeout(Duration.ofSeconds(30))
.version(HttpClient.Version.HTTP_1_1)
.build();
System.out.println(request); // https://example.com/ POST
System.out.println(request.method()); // POST
// {Content-Language=[en], Content-Type=[text/plain]}
System.out.println(request.headers().map());
System.out.println(request.timeout()); // Optional[PT30S]
System.out.println(request.version()); // Optional[HTTP_1_1]
Methods
HttpRequest build ()
Crea y devuelve una HttpRequest. (Traducción automática)
final var uri = URI.create("https://example.com/");
final var request = HttpRequest.newBuilder(uri)
.POST(HttpRequest.BodyPublishers.ofString("XYZ"))
.build();
System.out.println(request); // https://example.com/ POST
HttpRequest.Builder copy ()
Devuelve una copia duplicada exacta de este Builder según el estado actual. (Traducción automática)
final var uri = URI.create("https://example.com/");
final var src = HttpRequest.newBuilder(uri).DELETE();
final var copied = src.copy();
System.out.println(src.build()); // https://example.com/ DELETE
System.out.println(copied.build()); // https://example.com/ DELETE
copied.GET();
System.out.println(src.build()); // https://example.com/ DELETE
System.out.println(copied.build()); // https://example.com/ GET
src.uri(URI.create("http://127.0.0.1:8000/"));
System.out.println(src.build()); // http://127.0.0.1:8000/ DELETE
System.out.println(copied.build()); // https://example.com/ GET
HttpRequest.Builder DELETE ()
Establece el método de solicitud de este constructor en DELETE. (Traducción automática)
final var uri = URI.create("https://example.com/");
final var request = HttpRequest.newBuilder(uri).DELETE().build();
System.out.println(request); // https://example.com/ DELETE
System.out.println(request.method()); // DELETE
HttpRequest.Builder expectContinue (boolean enable)
Solicita al servidor que reconozca la solicitud antes de enviar el cuerpo. (Traducción automática)
final var uri = URI.create("https://example.com/");
final var request = HttpRequest.newBuilder(uri).expectContinue(true).build();
System.out.println(request); // https://example.com/ GET
System.out.println(request.expectContinue()); // true
final var uri = URI.create("https://example.com/");
final var request = HttpRequest.newBuilder(uri).build();
System.out.println(request.expectContinue()); // false
HttpRequest.Builder GET ()
Establece el método de solicitud de este constructor en GET. (Traducción automática)
final var uri = URI.create("https://example.com/");
final var request = HttpRequest.newBuilder(uri).GET().build();
System.out.println(request); // https://example.com/ GET
System.out.println(request.method()); // GET
default HttpRequest.Builder HEAD ()
Establece el método de solicitud de este constructor en HEAD. (Traducción automática)
final var uri = URI.create("https://example.com/");
final var request = HttpRequest.newBuilder(uri).HEAD().build();
System.out.println(request); // https://example.com/ HEAD
System.out.println(request.method()); // HEAD
HttpRequest.Builder header (String name, String value)
Agrega el par de valor de nombre proporcionado al conjunto de encabezados de esta solicitud. (Traducción automática)
final var uri = URI.create("https://example.com/");
final var request = HttpRequest.newBuilder(uri)
.header("aaa", "X")
.header("bbb", "Y1")
.header("bbb", "Y2")
.header("ccc", "Z")
.build();
// https://example.com/ GET
System.out.println(request);
// {aaa=[X], bbb=[Y1, Y2], ccc=[Z]}
System.out.println(request.headers().map());
HttpRequest.Builder headers (String... headers)
Agrega los pares de valores de nombre dados al conjunto de encabezados de esta solicitud. (Traducción automática)
final var uri = URI.create("https://example.com/");
final var request = HttpRequest.newBuilder(uri)
.headers("aaa", "X", "bbb", "Y1", "bbb", "Y2", "ccc", "Z")
.build();
// https://example.com/ GET
System.out.println(request);
// {aaa=[X], bbb=[Y1, Y2], ccc=[Z]}
System.out.println(request.headers().map());
HttpRequest.Builder method (String method, HttpRequest.BodyPublisher bodyPublisher)
Establece el método de solicitud y el cuerpo de la solicitud de este constructor en los valores dados. (Traducción automática)
final var uri = URI.create("https://example.com/");
final var request = HttpRequest.newBuilder(uri)
.method("HEAD", HttpRequest.BodyPublishers.noBody())
.build();
System.out.println(request); // https://example.com/ HEAD
System.out.println(request.method()); // HEAD
HttpRequest.Builder POST (HttpRequest.BodyPublisher bodyPublisher)
Establece el método de solicitud de este constructor en POST y establece el editor del cuerpo de la solicitud en el valor dado. (Traducción automática)
final var uri = URI.create("https://example.com/");
final var request = HttpRequest.newBuilder(uri)
.POST(HttpRequest.BodyPublishers.ofString("XYZ"))
.build();
System.out.println(request); // https://example.com/ POST
System.out.println(request.method()); // POST
HttpRequest.Builder PUT (HttpRequest.BodyPublisher bodyPublisher)
Establece el método de solicitud de este constructor en PUT y establece el editor del cuerpo de la solicitud en el valor dado. (Traducción automática)
final var uri = URI.create("https://example.com/");
final var request = HttpRequest.newBuilder(uri)
.PUT(HttpRequest.BodyPublishers.ofString("XYZ"))
.build();
System.out.println(request); // https://example.com/ PUT
System.out.println(request.method()); // PUT
HttpRequest.Builder setHeader (String name, String value)
Establece el par de valor de nombre dado para el conjunto de encabezados para esta solicitud. (Traducción automática)
final var uri = URI.create("https://example.com/");
final var builder = HttpRequest.newBuilder(uri);
final var request1 = builder
.header("aaa", "X1")
.header("aaa", "X2")
.header("bbb", "Y")
.build();
// {aaa=[X1, X2], bbb=[Y]}
System.out.println(request1.headers().map());
final var request2 = builder
.setHeader("aaa", "X3")
.build();
// {aaa=[X3], bbb=[Y]}
System.out.println(request2.headers().map());
HttpRequest.Builder timeout (Duration duration)
Establece un tiempo de espera para esta solicitud. (Traducción automática)
final var uri = URI.create("https://example.com/");
final var request = HttpRequest.newBuilder(uri)
.timeout(Duration.ofSeconds(30))
.build();
System.out.println(request); // https://example.com/ GET
System.out.println(request.timeout()); // Optional[PT30S]
final var uri = URI.create("https://example.com/");
final var request = HttpRequest.newBuilder(uri).build();
System.out.println(request.timeout()); // Optional.empty
HttpRequest.Builder uri (URI uri)
Establece el URI de solicitud de este HttpRequest. (Traducción automática)
final var uri = URI.create("https://example.com/");
final var request = HttpRequest.newBuilder().uri(uri).build();
System.out.println(request); // https://example.com/ GET
HttpRequest.Builder version (HttpClient.Version version)
Establece el HttpClient.Version preferido para esta solicitud. (Traducción automática)
final var uri = URI.create("https://example.com/");
final var request = HttpRequest.newBuilder(uri)
.version(HttpClient.Version.HTTP_1_1)
.build();
System.out.println(request); // https://example.com/ GET
System.out.println(request.version()); // Optional[HTTP_1_1]
final var uri = URI.create("https://example.com/");
final var request = HttpRequest.newBuilder(uri).build();
System.out.println(request.version()); // Optional.empty