Java
Uso de Java para obtener datos desde la API de indicadores.
A continuación se muestra el código de ejemplo para consultar a nuestra API desde el Lenguaje Java. El ejemplo utiliza java.net.http.HttpClient, incluido desde Java 11, y Jackson para leer el JSON. Además, envía la cabecera User-Agent para identificar el cliente.
Si usas Maven, agrega la dependencia de Jackson:
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.18.2</version>
</dependency>
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.time.Duration;
public class FindicExample {
public static void main(String[] args) throws Exception {
HttpClient client = HttpClient.newBuilder()
.connectTimeout(Duration.ofSeconds(10))
.followRedirects(HttpClient.Redirect.NORMAL)
.build();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://findic.cl/api/"))
.timeout(Duration.ofSeconds(10))
.header("User-Agent", "findic-docs-java/1.0")
.header("Accept", "application/json")
.GET()
.build();
HttpResponse<String> response = client.send(
request,
HttpResponse.BodyHandlers.ofString()
);
if (response.statusCode() != 200) {
System.err.println("Error en la solicitud: " + response.statusCode());
return;
}
JsonNode data = new ObjectMapper().readTree(response.body());
JsonNode uf = data.get("uf");
System.out.println("Fecha: " + uf.get("fecha").asText());
System.out.println("Valor UF: $ " + uf.get("valor").asDouble());
}
}
Más información del objeto JSON entregado en el resumen aquí.