LibOss.Config.Validator (lib_oss v0.3.0)
View Source增强的配置验证器,提供运行时配置验证和环境特定配置支持。
该模块扩展了基础的NimbleOptions验证,添加了:
- 运行时配置验证
 - 环境特定配置支持
 - 详细的错误提示
 - 配置值的格式验证
 
Summary
Types
Functions
获取配置模式定义。
参数
env- 环境 (:dev, :test, :prod)
返回值
- NimbleOptions 模式定义
 
@spec validate(keyword(), keyword()) :: validation_result()
验证配置参数。
参数
config- 配置关键字列表opts- 验证选项:env- 环境 (:dev, :test, :prod):runtime- 是否进行运行时验证 (默认: true)
返回值
{:ok, validated_config}- 验证成功{:error, error_message}- 验证失败
示例
iex> config = [
...>   access_key_id: "test_access_key_id_123",
...>   access_key_secret: "test_access_key_secret_12345678901234567890",
...>   endpoint: "oss-cn-hangzhou.aliyuncs.com"
...> ]
iex> {:ok, result} = LibOss.Config.Validator.validate(config, runtime: false)
iex> Keyword.get(result, :access_key_id)
"test_access_key_id_123"
  验证配置参数,验证失败时抛出异常。
参数
config- 配置关键字列表opts- 验证选项(同validate/2)
返回值
validated_config- 验证成功的配置
异常
LibOss.Exception- 验证失败
示例
iex> config = [
...>   access_key_id: "test_access_key_id_123",
...>   access_key_secret: "test_access_key_secret_12345678901234567890",
...>   endpoint: "oss-cn-hangzhou.aliyuncs.com"
...> ]
iex> result = LibOss.Config.Validator.validate!(config, runtime: false)
iex> Keyword.get(result, :access_key_id)
"test_access_key_id_123"