关于配置文件,beego自带的使用也方便,如果在不同的环境下的配置都是配置在一个文件中,这样的配置只是公司内部,或者自己使用比较方便。但是如果我们要把代码上传到GitHub,并且公开访问仓库的话,连接数据库等配置就暴露了,很不安全。针对这样的问题,我们可以把链接数据库等不能公开的配置信息放到一个单独文件中,并且过滤掉不上传到GitHub公共仓库中。viper
配置比较自由,而且比较多开源项目在使用的一个开源配置项目。
添加viper配置解析
viper是一个很完善的Go项目配置解决方案,使用viper可以让我们专注于自己的项目代码,而不用自己写那些配置解析代码。目前很多比较大的开源项目都用viper来管理配置。
1. 先安装viper
go get github.com/spf13/viper
2.配置
直接在main.go
文件的main
方法添加以下代码进行测试是否完成安装:
// 路径
viper.AddConfigPath(".")
// 文件名
viper.SetConfigName("env")
// 文件类型
viper.SetConfigType("yaml")
err := viper.ReadInConfig()
if err != nil {
fmt.Errorf("fatal error config file: %w", err)
}
appname := viper.Get