使用Viper读取Nacos配置(开源)
Posted Cloud Hilltop Clup
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Viper读取Nacos配置(开源)相关的知识,希望对你有一定的参考价值。
一、前言
二、什么是Viper
Viper是适用于Go应用程序的完整配置解决方案。它被设计用于在应用程序中工作,并且可以处理所有类型的配置需求和格式。
2.1 它支持以下特性:
设置默认值
从JSON、TOML、YAML、HCL、envfile和Java properties格式的配置文件读取配置信息
实时监控和重新读取配置文件(可选)
从环境变量中读取
从远程配置系统remote(etcd或Consul)读取并监控配置变化
从命令行参数读取配置
从buffer读取配置
显式配置值
2.2 读取本地文件
viper.SetConfigFile("./config.yaml") // 指定配置文件路径
viper.SetConfigName("config") // 配置文件名称(无扩展名)
viper.SetConfigType("yaml") // 如果配置文件的名称中没有扩展名,则需要配置此项
viper.AddConfigPath("/etc/appname/") // 查找配置文件所在的路径
viper.AddConfigPath("$HOME/.appname") // 多次调用以添加多个搜索路径
viper.AddConfigPath(".") // 还可以在工作目录中查找配置
err := viper.ReadInConfig() // 查找并读取配置文件
if err != nil { // 处理读取配置文件的错误
panic(fmt.Errorf("Fatal error config file: %s \n", err))
}
本篇文章重点着重于remote部分,Nacos的支持.
Viper remote
在Viper中启用远程支持,需要在代码中匿名导入viper/remote这个包。
Copy以上是关于使用Viper读取Nacos配置(开源)的主要内容,如果未能解决你的问题,请参考以下文章