Flask API 路径中的下一个环境变量

问题描述 投票:0回答:1

我已经根据这篇 Vercel 文章为我的 Next 前端设置了一个 Python 后端。

如何访问这些 Python API 路由中的环境变量?

在开发中,信息保存在

.env.local
中,在部署中,它们将添加到项目的 Vercel 仪表板中。

如果这是标准 Node API 路由,我将像这样访问环境变量:

const username = process.env.username

在这个 Vercel 文档的顶部附近,它提到可以像这样访问 Python 环境变量:

username = os.environ.get('username')

但是这不起作用,并且当需要使用它时变量是未定义的。

我的猜测是,这与以下事实有关:在

localhost
上进行测试时,根据此
VS Code 教程
和此 其他教程,Flask 服务器在 venv 虚拟环境中运行。

Flask 服务器也运行在与 Next 前端不同的端口上,因此它无法访问

.env.local
文件是有道理的。

我对使用非 Node 后端进行 Next API 路由完全陌生,所以我不太确定如何正确设置它。关于使用 Python 后端作为 Next 前端的问题/文章并不多,而且我发现的少数问题/文章都没有提到环境变量。

有什么想法吗?

python flask next.js python-venv
1个回答
0
投票

我只是使用 load_dotenv() 函数 before environ.get('var_name') 函数解决了这个问题。 如果仍然不起作用,您可以尝试在专用文件夹中创建另一个 .env 文件,并使用指定 .env 路径 dotenv_path = 路径('path/to/.env')

© www.soinside.com 2019 - 2024. All rights reserved.