ExWechatpay.Config.Provider (ex_wechatpay v0.3.5)
View Source配置提供者模块
该模块负责加载和管理 ExWechatpay 的配置,支持从多种来源获取配置:
- 直接传入的配置
- 应用程序配置
- 环境变量
通过这种方式,可以灵活地管理配置,同时支持配置热更新。
Summary
Functions
获取当前配置
参数
agent- 配置 Agent 名称
返回值
keyword()- 当前配置
加载配置
参数
config- 直接传入的配置
返回值
{:ok, config}- 成功加载的配置{:error, error}- 加载失败的错误信息
配置加载优先级:直接传入的配置 > 应用程序配置 > 环境变量 > 默认值
@spec load_env_config() :: keyword()
从环境变量加载配置
环境变量需要以 EX_WECHATPAY_ 为前缀,例如:
EX_WECHATPAY_APPIDEX_WECHATPAY_MCHIDEX_WECHATPAY_SERVICE_HOST
对于复杂结构,可以使用 JSON 格式的字符串,例如:
EX_WECHATPAY_WX_PUBS='[{"wechatpay-serial": "pem-content"}]'
返回值
keyword()- 从环境变量加载的配置
准备配置,进行必要的转换
参数
config- 原始配置
返回值
keyword()- 处理后的配置
设置配置
参数
agent- 配置 Agent 名称config- 新配置
返回值
:ok- 设置成功
更新现有配置
参数
agent- 配置 Agent 名称updates- 要更新的配置
返回值
{:ok, new_config}- 更新后的配置{:error, error}- 更新失败的错误信息