首页 > 解决方案 > 如何将 Heroku 配置变量设置为 JSON 值?

问题描述

我想使用 JSON 值作为环境变量heroku config:set

但是如果我运行这个命令:

heroku config:set FOO_JSON={"abc":"bcd","cde":"def" ... }

全部"被删除是这样的:

FOO_JSON={abc:bcd,cde:def ... }

我得到一个解析错误。

如何在 Heroku 的环境变量中使用 JSON?

标签: jsonherokuenvironment-variables

解决方案


Heroku 将删除第一个和最后一个,"但这很好,我最近遇到了类似的问题。当您在代码库中获取变量时,它将用字符串引号包裹起来,这样您就可以成功JSON.parse(process.env.VARIABLE)

例子。我在本地有一些被禁止用户的列表.env

BANLIST = '["abdu","yak","jek","tosch","krek"]'

所以,我可以简单地设置

heroku config:set BANLIST='["abdu","yak","jek","tosch","krek"]'

或者

heroku config:set BANLIST=["abdu","yak","jek","tosch","krek"]

他们都将导致["abdu","yak","jek","tosch","krek"].

因此,当您使用 取回它时JSON.parse(process.env.BANLIST),您将获得适当的数组输出。

'警告:如果您设置使用 heroku GUI 界面包装的配置变量",它根本不会设置,所以只需放置您的数组或对象 JSON,而不用其中任何一个包装它


推荐阅读