Aprenda a usar el módulo dotenv crate y std:: env para interactuar con variables de entorno en Rust y manejar información confidencial.

Las variables de entorno juegan un papel crucial en la configuración y personalización del comportamiento del software moderno, proporcionando una forma flexible de transmitir información a las aplicaciones sin valores de codificación.

Las variables de entorno son pares clave-valor dinámicos establecidos en el entorno de un sistema operativo o en un archivo de variables de entorno para acceder durante el tiempo de ejecución. A diferencia de los valores codificados, las variables de entorno permiten una mayor flexibilidad y adaptabilidad, ya que puede modificarlas fácilmente.

Hay muchos paquetes y módulos para interactuar con variables de entorno en el ecosistema de Rust, incluido el dotenv, envidiar, y configuración cajas de terceros, y use el integrado de Rust estándar:: env módulo.

Introducción a la caja dotenv

El dotenv crate es una herramienta valiosa para administrar variables de entorno en su proyecto Rust. El

instagram viewer
dotenv crate proporciona una integración simple y funciones fáciles de usar que simplifican el proceso de carga y acceso a variables de entorno desde archivos de variables de entorno.

Las características de la caja dotenv incluyen carga variable de entorno transparente, enfoques de manejo de errores para variables faltantes, interoperación con el estándar:: env módulo, y más.

Añade el dotenv caja a su Cargo.toml sección de dependencias del archivo para comenzar a interactuar con las variables de entorno utilizando el paquete.

[dependencias]
dotenv = "0.15.0"

Ejecute este comando en la terminal del directorio de su proyecto para crear un archivo de variables de entorno e insertar un par clave-valor.

eco DATABASE_URL=base de datos.db > .env

Así es como puede cargar el archivo de entorno y recuperar el valor de un par del archivo (en este caso, el valor del DATABASE_URL llave:

usar estándar:: env;
usar dotenv:: dotenv;

fnprincipal() {

dotenv().ok(); // Cargar el archivo .env

// Leer el valor del archivo .env
dejar base_de_datos_url = entorno:: var("DATABASE_URL").esperar("No has configurado DATABASE_URL");

// Imprime el valor
imprimir!("URL de la base de datos: {}", base de datos_url);

}

El principal La función carga el .env archivo con el OK función, lee el valor del archivo con el entorno:: var función, y maneja los posibles errores con el esperar función.

Introducción al módulo std:: env

Alternativamente, en lugar de utilizando paquetes de terceros, puedes usar el integrado de Rust estándar:: env módulo para leer las variables de entorno de su máquina.

En primer lugar, deberá importar el env module en su archivo Rust de la siguiente manera:

usar estándar:: env;

Después de importar el estándar:: env módulo, puede leer y escribir variables de entorno.

Así es como puedes leer el PCD (Directorio de trabajo actual) variable de entorno con el estándar:: env módulo.

usar estándar:: env;

fnprincipal() {

// Recuperar el valor de la variable de entorno "PWD"
dejar variable = entorno:: var("PCD").esperar("Error: variable de entorno del directorio de trabajo no encontrada");

// Imprime el valor asociado a la clave "PWD"
imprimir!("Valor asociado con la clave PWD: {}", variable);

}

El principal La función imprime el valor asociado con el PCD después de que la variable recupera el valor con el entorno:: var función.

Además, puede utilizar el estándar:: env del módulo conjunto_var función para establecer variables de entorno.

usar estándar:: env;

fnprincipal() -> ResultadoCaja<dinámico std:: error:: Error>> {

// Establecer la variable de entorno "DATABASE_URL" en "database.db"
entorno:: set_var("DATABASE_URL", "base de datos.db");

// Recuperar el valor de la variable de entorno "DATABASE_URL"
dejar env_variable = env:: var("DATABASE_URL");

// Comprobar si la recuperación de la variable de entorno se ha realizado correctamente
si env_variable.is_err() {

// Si no se encontró la variable de entorno, imprima un mensaje de error
imprimir!("Error: DATABASE_URL no encontrada");

} demás {

// Si se encontró la variable de entorno, imprima su valor
imprimir!("DATABASE_URL establecido en: {}", variable_env.unwrap());

}

De acuerdo(())
}

El principal establece la variable de entorno con el conjunto_var función que toma el par clave-valor. Después de configurar la variable de entorno, la función imprime el valor asociado con la clave.

Las variables ambientales son versátiles

Las variables de entorno son una herramienta valiosa para manejar datos dinámicos; facilitan el desarrollo basado en pruebas, ya que puede cambiar fácilmente los datos y ejecutar casos de prueba para múltiples escenarios.

Mediante el uso de variables de entorno, puede evitar codificar información confidencial como nombres de usuario, contraseñas y datos de la base de datos. URL de conexión directamente en el código fuente, lo que mejora la seguridad de su aplicación y permite una configuración más sencilla gestión.