本篇文章向大家介绍《如何访问golang项目的JSON文件中的环境变量?》,主要包括,具有一定的参考价值,需要的朋友可以参考一下。问题内容我的团队使用 Golang 进行编码,我们将所有配置放在 c
本篇文章向大家介绍《如何访问golang项目的JSON文件中的环境变量?》,主要包括,具有一定的参考价值,需要的朋友可以参考一下。
问题内容我的团队使用 Golang 进行编码,我们将所有配置放在 conf.json
中,有趣的部分如下所示,以及另一个用于 json 验证的 config_schema.json
文件。
{
"host": "192.168.0.34",
"port": "5678",
"username": "test_user",
"passWord": "random_pass",
"dbname": "dummy"
}
我的问题是,我可以定义环境变量,例如 $user 和 $pass 并按如下方式使用它们,或者出于安全目的有适当的方法来实现此目的吗?
{
"host": "192.168.0.34",
"port": "5678",
"username": "$USER",
"password": "$PASS",
"dbName": "dummy"
}
也许已经太晚了,因为这个问题已经有一岁了 但您可以使用 https://golang.org/pkg/os/#ExpandEnv 的组合 和Https://golang.org/pkg/encoding/json/#Unmarshaler
为了使用 unmarshaler,您应该有一个与您的 json 相对应的 struct
。那么您可以覆盖默认方法并仅替换您想要的字段。更简单的示例如下所示
result := os.ExpandEnv(jsonString)
实例:https://play.golang.org/p/78C2zyYP6vL
本篇关于《如何访问Golang项目的JSON文件中的环境变量?》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于Golang的相关知识,请关注编程网公众号!
--结束END--
本文标题: 如何访问Golang项目的JSON文件中的环境变量?
本文链接: https://www.lsjlt.com/news/596448.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-04-05
2024-04-05
2024-04-05
2024-04-04
2024-04-05
2024-04-05
2024-04-05
2024-04-05
2024-04-04
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0