Rust

Uso de Rust 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 Rust. El ejemplo utiliza reqwest y serde, y envía la cabecera User-Agent para identificar el cliente.

Agrega las dependencias a tu Cargo.toml:

[dependencies]
reqwest = { version = "0.12", features = ["blocking", "json"] }
serde = { version = "1", features = ["derive"] }
use reqwest::blocking::Client;
use serde::Deserialize;
use std::time::Duration;

#[derive(Debug, Deserialize)]
struct Indicador {
    fecha: String,
    valor: f64,
}

#[derive(Debug, Deserialize)]
struct Resumen {
    uf: Indicador,
}

fn main() -> Result<(), Box<dyn std::error::Error>> {
    let client = Client::builder()
        .user_agent("findic-docs-rust/1.0")
        .timeout(Duration::from_secs(10))
        .build()?;

    let resumen: Resumen = client
        .get("https://findic.cl/api/")
        .header(reqwest::header::ACCEPT, "application/json")
        .send()?
        .error_for_status()?
        .json()?;

    println!("Fecha: {}", resumen.uf.fecha);
    println!("Valor UF: $ {:.2}", resumen.uf.valor);

    Ok(())
}

Más información del objeto JSON entregado en el resumen aquí.