Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
python:flask:session [2021/11/12 06:32] marclebrun [Session] |
python:flask:session [2023/05/12 13:50] (Version actuelle) marclebrun |
||
---|---|---|---|
Ligne 2: | Ligne 2: | ||
Doc: | Doc: | ||
- | * [[https://flask.palletsprojects.com/en/2.0.x/quickstart/#sessions]] | + | * [[https://flask.palletsprojects.com/en/2.2.x/quickstart/#sessions]] |
- | Didacticiel: | + | Didacticiels: |
* [[https://www.code-learner.com/how-to-use-session-and-cookie-in-python-flask-framework/]] | * [[https://www.code-learner.com/how-to-use-session-and-cookie-in-python-flask-framework/]] | ||
+ | * [[https://testdriven.io/blog/flask-sessions/]] | ||
+ | * [[https://pythonbasics.org/flask-sessions/]] | ||
+ | * [[https://overiq.com/flask-101/sessions-in-flask/]] :-) | ||
===== Prérequis ===== | ===== Prérequis ===== | ||
Ligne 70: | Ligne 72: | ||
<code python> | <code python> | ||
session.pop("USERNAME", None) | session.pop("USERNAME", None) | ||
+ | </code> | ||
+ | |||
+ | ===== Durée de validité de la session ===== | ||
+ | |||
+ | Par défaut le cookie de session expire à la fermeture du navigateur. | ||
+ | |||
+ | Pour que la session reste ouverte pendant 31 jours (la valeur par défaut) : | ||
+ | * La valeur de **app.config["PERMANENT_SESSION_LIFETIME"]** est déjà initialisée à **31 jours** par défaut | ||
+ | * Mettre **session.permanent = True** lors d'une connexion réussie | ||
+ | |||
+ | <code python> | ||
+ | @app.route("/login") | ||
+ | def login(): | ||
+ | | ||
+ | ... | ||
+ | | ||
+ | if password_is_ok(...): | ||
+ | ... | ||
+ | session['username'] = username | ||
+ | session.permanent = True | ||
</code> | </code> | ||