Crate admin_config

Crate admin_config 

Source
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 = 0

Structs§

AliyunSmsConfig
阿里云短信配置
AppConfig
AuthConfig
认证配置
CosConfig
对象存储配置
EmailConfig
邮件配置
MongoDbConfig
MongoDB 数据库配置
MySqlConfig
MySQL 数据库配置
PostgreSqlConfig
PostgreSQL 数据库配置
QdrantConfig
Qdrant 向量数据库配置
RedisConfig
Redis 配置
SecurityConfig
安全配置
SeekDbConfig
SeekDB 多模型数据库配置
ServerConfig
服务器配置
SessionConfig
Session 配置
SmsConfig
短信配置
SqliteConfig
SQLite 数据库配置
TencentSmsConfig
腾讯云短信配置
VerificationCodeConfig
验证码配置

Traits§

ToConnectionUrl
数据库连接 URL 转换 trait