Consuming REST APIs in Java with HttpClient

Make HTTP GET and POST requests with the native Java 11+ client. With a simulator where you pick the endpoint and see the request and response.

Desde Java 11 no necesitas librerías externas para hablar con una API: HttpClient, HttpRequest y HttpResponse vienen en el JDK (paquete java.net.http).

HttpClient cliente = HttpClient.newHttpClient();

HttpRequest peticion = HttpRequest.newBuilder()
    .uri(URI.create("https://api.ejemplo.com/usuarios/1"))
    .header("Accept", "application/json")
    .GET()
    .build();

HttpResponse<String> respuesta = cliente.send(peticion, HttpResponse.BodyHandlers.ofString());

System.out.println(respuesta.statusCode());  // 200
System.out.println(respuesta.body());        // {"id":1,"nombre":"Ana", ...}

Request simulator

Elige un endpoint y un método. Verás el código Java que lo construye y la respuesta simulada.

Reading the JSON data

respuesta.body() es texto. Para trabajar con los campos, se usa una librería como Jackson o Gson: Usuario u = new ObjectMapper().readValue(body, Usuario.class);. En este demo extraemos un campo directamente.

Status codes

Check what you've learned