组件分享之后端组件——Golang的配置文件管理组件viper
背景
近期正在探索前端、后端、系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成标准化组件专题,后续该专题将包含各类语言中的一些常用组件。欢迎大家进行持续关注。
组件基本信息
- 组件:viper
- 开源协议:MIT License
内容
本节我们分享一个在Golang中比较常用的组件配置文件管理组件viper,在目前社区里面还是非常火的,其使用方式也比较简单,具体如下:
使用方式如下:
1、进行安装
go get github.com/spf13/viper
2、读取配置文件
viper.SetConfigName("config") // 配置文件的名称(没有扩展名)
viper.SetConfigType("yaml") // 如果配置文件名称中没有扩展名,则是必需的
viper.AddConfigPath("/etc/appname/") // 在其中查找配置文件的路径
viper.AddConfigPath("$HOME/.appname") // 多次调用以添加多个搜索路径
viper.AddConfigPath(".") // 可以选择在工作目录中查找config
err := viper.ReadInConfig() // 查找并读取配置文件
if err != nil { // 处理读取配置文件错误
panic(fmt.Errorf("Fatal error config file: %w \n", err))
}
更多使用方式和框架中的封装方式,可以参考我的其他文章,FastDevelopGo框架,后续在使用过程中还会进行调整,建议直接参见框架中的源代码和其中的注释,能带来更好的帮助。
本文声明:
88x31.png
本作品由 cn華少 采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可。