gpt4 book ai didi

python - 在 Ubuntu 中为 Heroku/python 应用程序设置环境变量

转载 作者:行者123 更新时间:2023-12-04 19:06:40 25 4
gpt4 key购买 nike

我已经阅读了一些操作方法,但仍在为此苦苦挣扎。在我的应用程序中,我之前只是从文件夹系统中的 .py 文件中提取我的 key (这不是最佳实践)。相反,我想使用 os 模块在我的开发环境中获取我的 key (最终在 heroku 中做同样的事情),类似于下面的代码:

import os    
OAUTH_TOKEN = os.getenv('OAUTH_TOKEN')
我读过我需要将我的实际 OAUTH_TOKEN 添加到 .profile 文件中才能正常工作。
OAUTH_TOKEN = 'mysecretkey'
但是,当我运行上面的第一段代码并尝试打印 OAUTH_TOKEN 变量时,我什么也没得到。我还将我的 key 添加到 .bashsrc 文件以及其他一些据说这样做的网站。
发生了什么事,为什么我不能以这种方式检索我的 key ?我错过了什么?

最佳答案

要在使用 Python-Flask 应用程序时检索您的 key ,您需要安装 python-dotenv .这个包将有助于加载 secret 甚至运行时环境变量。

(venv)$ pip3 install python-dotenv
例如,在您的 key 文件中, .env ,初始化你的 secret 环境变量:
# .env

OAUTH_TOKEN='<your-secret-oauth-token>'
加载 OAUTH_TOKEN , 使用 load-dotenv来自 dotenv :
# config.py

import os
from dotenv import load_dotenv

load_dotenv('.env')

class Config(object):
OAUTH_TOKEN = os.getenv('OAUTH_TOKEN')
# or OAUTH_TOKEN = os.environ.get('OAUTH_TOKEN')
在您的终端中,尝试检索 OAUTH_TOKEN 的值如下。我正在使用 flask shell命令而不是 python3 :
# start your python interpreter in the context of your application
(venv)$ flask shell

>>> from app import Config
>>> print(app.config['OAUTH_TOKEN']))

# Your token should be printed here
上面的假设是在您的应用程序实例中,比如说 __init__.py文件,您已导入 Config .
# __init__.py

from flask import Flask
from config import Config

app = Flask(__name__)
app.config.from_object(Config)

# ...

关于python - 在 Ubuntu 中为 Heroku/python 应用程序设置环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67294448/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com