Sessions & Cookies – Flask Tutorial Series #6
In this tutorial, we will discuss sessions and cookies in Flask. Sessions and cookies are used to store data on the client side for maintaining the state of the application.
Sessions
Sessions are used to store user data across multiple requests. In Flask, sessions are implemented using the `session` object. You can set session variables using `session[‘key’] = value` and access them using `session.get(‘key’)`.
Here is an example of how to use sessions in Flask:
from flask import Flask, session app = Flask(__name) app.secret_key = 'secret_key' @app.route('/') def index(): session['username'] = 'john' return 'Session variable set' @app.route('/get') def get(): return 'Username is: ' + session.get('username') if __name__ == '__main__': app.run()
Cookies
Cookies are small pieces of data stored on the client side. They are used to store information such as user preferences, shopping cart items, etc. In Flask, cookies can be set using the `set_cookie` method and accessed using the `request.cookies` object.
Here is an example of how to use cookies in Flask:
from flask import Flask, request app = Flask(__name) @app.route('/') def index(): resp = make_response('Cookie set') resp.set_cookie('username', 'john') return resp @app.route('/get') def get(): username = request.cookies.get('username') return 'Username is: ' + username if __name__ == '__main__': app.run()
Conclusion
Sessions and cookies are important tools for maintaining the state of an application in Flask. By using sessions and cookies, you can store user data and personalize the user experience. Make sure to keep sensitive information secure by using secure cookies and session management best practices.
👏🏾👏🏾👏🏾👏🏾
continue this series
Very good content, looking forward for more videos!
Thank you for the very easy-to-understand video! I have a question: Do session information also work when flask is started with gunicorn and multiple workers? Thank you very much! P.S. Maybe a video about Flask's deployment would be helpful?
Can you please do a video on jwt authentication also? ❤
Could you do a video over JWTs, being able to share credentials between servers?
🎉
Any idea how to fix a CSRF token invalid issue? I'm using DreamHost VPS to host a python website that uses Flask and Flask-WTForms. When I run gunicorn with multiple workers I get this issue when trying to login. I run it with one worker and no issues. Best I can find it has something to do with app_context() in Flask but three months ago I knew nothing about python so I'm stumbling my way through trying to fix it.
By the way loving the series man!
Edit: Dropped from 3 workers on Gunicorn down to 1 worker and specified 3 threads. Everything seems to be working at the moment but I still don't fully understand how to fix the issue or if doing that will cause performance issues.
Please, continue the series bro We are here 🙂
I really appreciate this Flask series 🙏 Would you consider making a Protobuf video? That's a topic i find surprisingly little quality content about
It is secret key 🔑 . It should be in .env or should be set as an environment variable. It is not a good idea to store this secret at this pythonfile.