J'essaie de configurer Flask-Debugtoolbar, mais je reçois le message "DebugToolBar nécessite un SECRET_KEY". Où puis-je obtenir la clé secrète?
La clé secrète est nécessaire pour sécuriser les sessions côté client. Vous pouvez générer une clé aléatoire comme ci-dessous:
>>> import os
>>> os.urandom(24)
'\xfd{H\xe5<\x95\xf9\xe3\x96.5\xd1\x01O<!\xd5\xa2\xa0\x9fR"\xa1\xa8'
Prenez simplement cette clé et copiez/collez-la dans votre fichier de configuration
SECRET_KEY = '\xfd{H\xe5<\x95\xf9\xe3\x96.5\xd1\x01O<!\xd5\xa2\xa0\x9fR"\xa1\xa8'
Voir la documentation Sessions
Méthode 1: Utilisez os
dans Python 2/3:
>>> import os
>>> os.urandom(12)
'\xf0?a\x9a\\\xff\xd4;\x0c\xcbHi'
Méthode 2: Utilisez uuid
dans Python 2/3:
>>> import uuid
>>> uuid.uuid4().hex
'3d6f45a5fc12445dbac2f59c3b6c7cb1'
Méthode 3: Utilisez secrets
dans Python> = 3.6:
>>> import secrets
>>> secrets.token_urlsafe(16)
'Drmhze6EPcv0fN_81Bj-nA'
Méthode 4: Utilisez os
dans Python 3:
>>> import os
>>> os.urandom(12).hex()
'f3cfe9ed8fae309f02079dbf'
Méthode 1: Utilisez app.secret_key
:
app.secret_key = 'the random string'
Méthode 2: Utilisez app.config
:
app.config['SECRET_KEY'] = 'the random string'
Méthode 3: Mettez-le dans votre fichier de configuration:
SECRET_KEY = 'the random string'
Afin d'utiliser la session dans flask vous devez définir la clé secrète dans les paramètres de votre application. La clé secrète est une clé aléatoire utilisée pour crypter vos cookies et les envoyer au navigateur.
Cette erreur est due à cette ligne dans le code Flask-Debugtoolbar
Pour résoudre ce problème, il vous suffit de définir un SECRET_KEY
dans votre fichier de configuration.
app.config['SECRET_KEY'] = "Your_secret_string"
ou si vous avez un fichier de configuration, ajoutez simplement ci-dessous la configuration:
SECRET_KEY = "Your_secret_string"