Crates.io | env |
lib.rs | env |
version | 0.1.0 |
source | src |
created_at | 2024-10-17 02:16:37.24471 |
updated_at | 2024-10-17 02:16:37.24471 |
description | A Rust implementation of dotenv for parsing .env files |
homepage | |
repository | https://github.com/liangshuai/env |
max_upload_size | |
id | 1412526 |
size | 6,394 |
env
是一个 Rust 实现的 dotenv 库,用于解析和加载 .env
文件中的环境变量。这个库提供了一种简单而强大的方式来管理你的应用程序的环境变量。
.env
文件将以下内容添加到你的 Cargo.toml 文件中:
[dependencies]
env = "0.1.0"
最简单的使用方法是在你的 main 函数开始时调用 dotenv() 函数:
use env::dotenv;
fn main() {
dotenv().expect("Failed to load .env file");
// 现在你可以使用 std::env::var 来获取环境变量
let database_url = std::env::var("DATABASE_URL").expect("DATABASE_URL must be set");
println!("Database URL: {}", database_url);
}
如果你需要更多控制,可以直接使用 Dotenv 结构体:
use env::Dotenv;
fn main() {
let mut dotenv = Dotenv::new();
// 加载默认的 .env 文件
dotenv.load().expect("Failed to load .env file");
// 加载自定义文件
dotenv.load_file("custom.env").expect("Failed to load custom.env file");
// 手动设置变量
dotenv.set("CUSTOM_VAR", "custom_value");
// 获取变量值
if let Some(value) = dotenv.get("CUSTOM_VAR") {
println!("CUSTOM_VAR: {}", value);
}
// 将所有变量应用到环境中
dotenv.apply();
}
DATABASE_URL=postgres://user:password@localhost/mydb
API_KEY=abcdef123456
ENABLE_FEATURE=true
注意事项 确保不要将包含敏感信息的 .env 文件提交到版本控制系统中。 在生产环境中,建议使用系统环境变量而不是 .env 文件。
欢迎提交 issues 和 pull requests 来帮助改进这个项目。在提交 pull request 之前,请确保你的代码通过了所有测试,并且符合项目的代码风格。
0.1.0 初始版本 实现基本的 .env 文件解析和加载功能 提供 Dotenv 结构体和 dotenv() 便捷函数
这个项目受到了原始 dotenv 项目的启发。