在读的时候exploreflask.com https://exploreflask.com/configuration.html,我了解到最好的做法是使用两个不同的配置文件,一个用于开发,一个用于生产。我不明白是否将密钥放在开发或生产配置中。
实例文件夹的私有性质使其非常适合定义您不希望在版本控制中公开的密钥。这些可能包括您应用程序的密钥或第三方 API 密钥。
我认为秘密密钥不应该被共享。我应该将密钥放在开发配置或生产配置中,还是应该为每个配置使用不同的密钥?
在开发配置中放置一个密钥,该密钥将提交到存储库。这对于开发人员来说很方便,因为他们不必生成一个即可开始运行应用程序。在生产中,使用具有唯一密钥的生产配置(永远不会提交到存储库)。生产配置应该覆盖开发配置。
app = Flask(__name__, instance_relative_config=True)
# default value during development
app.secret_key = 'dev'
# overridden if this file exists in the instance folder
app.config.from_pyfile('config.py', silent=True)
如果您没有办法在生产中添加私有文件(例如在 Heroku 上),另一个选择是使用环境变量。如果设置了该变量,它将覆盖默认值。
app.secret_key = os.environ.get('SECRET_KEY', 'dev')
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)