0

使用 python-dotenv 时,我试图将我的凭据放入 env 中。我以前用过

export CREDS=`cat $PATH_TO_CREDS_JSON` 

在我的 .zshrc 文件中。

我曾尝试cat像以前一样使用该命令,但它被保存为字符串。

打印它会导致将字符串值cat $PATH_TO_CREDS保存到 env 变量中。

我用不同的引号和不带引号的方式尝试过。

这是我在我的主要称为 python 文件中的代码。

from dotenv import load_dotenv

path = path.join(path.dirname(path.realpath(__file__)), "devlocal/.env")
load_dotenv(dotenv_path=path, override=True, verbose=True)

我的 .env 文件是

CREDS=`cat $PATH_TO_CREDS_JSON`

这个。

我希望os.getenv('CREDS')生成一个包含我的凭据的 json 格式文件。可悲的是它只返回命令的字符串。

4

1 回答 1

0

您应该在 .env 文件中分别定义凭据的每个值。例如,如果您的 json 看起来像这样:

{"username": "example1", "password": "example2"}

然后你的 .env 应该是这样的:

USERNAME=example1
PASSWORD=example2

然后你可以像这样加入他们:

import json
...
creds = json.dumps({"username": os.getenv('USERNAME'), "password": os.getenv('PASSWORD')})
于 2019-05-14T16:33:20.710 回答