Expand description
统一配置管理库
提供应用程序所需的各类配置管理功能,支持:
- 多数据库配置(MongoDB、MySQL、PostgreSQL、SQLite、Redis、Neo4j、Qdrant、SeekDB)
- 认证与安全配置(JWT、Session、CORS、加密)
- 第三方服务配置(邮件、短信、对象存储)
- 环境变量覆盖
- 配置文件自动查找
§功能特性
- 支持从 config.toml 加载配置
- 支持环境变量覆盖配置项
- 自动查找配置文件(多路径策略)
- 配置验证与默认值
- 敏感信息自动生成(密钥、盐值等)
§使用示例
ⓘ
use admin_config::AppConfig;
let config = AppConfig::load()?;
println!("Server running on {}:{}", config.server.host, config.server.port);
println!("MongoDB connection: {}", config.database.mongodb.to_connection_url());
println!("Redis connection: {}", config.redis.connection_string());§配置文件示例
[server]
name = "actix-admin-server"
version = "0.1.0"
port = 3400
host = "0.0.0.0"
log_level = "info"
[database.mongodb]
host = "localhost"
port = 27017
database = "admin"
username = "admin"
password = "password"
[redis]
host = "localhost"
port = 6379
database = 0Structs§
- Aliyun
SmsConfig - 阿里云短信配置
- AppConfig
- Auth
Config - 认证配置
- CosConfig
- 对象存储配置
- Email
Config - 邮件配置
- Mongo
DbConfig - MongoDB 数据库配置
- MySql
Config - MySQL 数据库配置
- Postgre
SqlConfig - PostgreSQL 数据库配置
- Qdrant
Config - Qdrant 向量数据库配置
- Redis
Config - Redis 配置
- Security
Config - 安全配置
- Seek
DbConfig - SeekDB 多模型数据库配置
- Server
Config - 服务器配置
- Session
Config - Session 配置
- SmsConfig
- 短信配置
- Sqlite
Config - SQLite 数据库配置
- Tencent
SmsConfig - 腾讯云短信配置
- Verification
Code Config - 验证码配置
Traits§
- ToConnection
Url - 数据库连接 URL 转换 trait