dotenvy
- Alternativa a
dotenv dotenvyse utiliza para poder acceder a las variables que se definen en el archivo.env- Se pueden obtener las VARIABLES DEL SISTEMA sin
dotenvy
Instalación
cargo add dotenvy
Cargo.toml
[dependencies]
dotenvy = "0.15.7"
Uso
async fn main() {
// Cargar variables de entorno desde el archivo .env
// Fallará si el archivo no existe o no se puede leer
// ok() para evitar el error (ya que en producción no existe el archivo .env)
dotenvy::dotenv().ok();
// Obtener variables de entorno (con o sin dotenvy) en tiempo de ejecución
let server = env::var("SERVER").unwrap_or("127.0.0.1:3000".to_owned());
let db_url = env::var("DATABASE_URL").expect("DATABASE_URL undefined");
// env!
// Para comprobar las variables de entorno en tiempo de compilación
const PORT: &str = env!("PORT");
const DB_URL: &str = env!("DB_URL");
for (key, value) in env::vars() {
println!("{key}: {value}");
}
}