【发布时间】:2015-02-20 03:31:34
【问题描述】:
我正在 Windows 中开发 Python Flask Web 应用程序,我无法将我的密钥设置为环境变量。我已经通过 PowerShell 和 Windows GUI 设置了它。我也尝试过使用 Git Bash 来设置它。我可以在所有实例中成功设置并返回环境变量。
在我的 Flask 配置中,我有:
SECRET_KEY = os.environ.get("MY_SECRET_KEY", "")
我收到此错误:
RuntimeError: the session is unavailable because no secret key was set. Set the secret_key on the application to something unique and secret.
如果我对密钥进行硬编码,它可以正常工作。我知道可能存在为什么我想将密钥设置为环境变量的问题,而我目前的假设是我想知道它是什么,并且我不希望它在代码。
我愿意接受任何想法和建议。谢谢。
【问题讨论】:
-
您绝对可以在 Windows Python 中访问环境变量...因此我假设您在启动脚本之前没有正确设置环境变量
-
您能否更具体地了解设置环境变量?我直接进入windows高级设置,设置了User和System变量,还是不行。
-
你是如何运行你的脚本的?打开一个终端并运行 python 和
print os.environ(ofc 在你之后import os -
你应该使用
os.environ["MY_SECRET_KEY"],这样如果没有设置变量,你肯定会提前失败。 -
os.environ["MY_SECRET_KEY"]是解决方案。现在我的环境变量被识别了。