英文:
Configuration file using viper giving null value in GO
问题
我是你的中文翻译助手,以下是翻译好的内容:
我是Go语言的新手,正在使用viper进行配置管理。
配置文件的格式如下(config.yaml):
SD_ORIGIN: 网址
API_TRACKING_ID: 77xxx1
API_TOKEN: sdsaxxxdfds123
我使用以下Go代码来读取值,但在读取代码片段时得到了空值:
viper.SetConfigName("config")
viper.AddConfigPath(".")
err := viper.ReadInConfig()
if err != nil {
fmt.Println("配置文件未找到...")
}
var apiTrackingID = viper.GetString("API_TRACKING_ID")
请帮助我找出配置文件或Go实现中的问题。
英文:
i am new in Go and using viper for configuration management
configuration file looks like (config.yaml)
SD_ORIGIN : web url
API_TRACKING_ID : 77xxx1
API_TOKEN : sdsaxxxdfds123
And using the go code to read the value but getting null value while i read code snippet as :-
viper.SetConfigName("config")
viper.AddConfigPath(".")
err := viper.ReadInConfig()
if err != nil {
fmt.Println("Config not found...")
}
}
var apiTrackingID = viper.GetString("API_TRACKING_ID")
Please help to find the issue in my config file or implementation in Go.
答案1
得分: 0
最好检查一下这个链接:https://github.com/spf13/viper,代码片段看起来不错...也许$GOPATH和$GOHOME可能会有问题。
而且你的config.yaml文件不正确,缺少双引号。
API_TOKEN应该像这样:"sdsaxxxdfds123",希望这能解决你的问题。
英文:
better to check this https://github.com/spf13/viper the code snippet looks good ..may be there can be issue with $GOPATH and $GOHOME
and your config.yaml file is not proper double quotes are missing.
API_TOKEN : "sdsaxxxdfds123"
It has to be like this, hope this resolves your problem.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论