Falcon framework - how to store variables in a session?

I need to save the current user id in a session in my Falcon application. In Flask, I would do:

from flask import Flask, session

app = Flask(__name__)

@app.route('/')
def example():
    session['foo'] = 'bar'
    return 'bar'

@app.route('/bar')
def bar():
    return session.get('foo')

I would like to be able to do something like this in Falcon:

class ExampleResource(object):

    def on_get(self, req, resp):
        resp.status = falcon.HTTP_200
        resp.body = 'bar'
        self.session['foo'] = 'bar'

How can I do something like this in Falcon?

+4
source share
1 answer

From the source code , we learn that Flask uses a client-side session that is based on secure cookies.

In this way, we could achieve the same by using the Falcon Cookies API , which by default uses secure cookies.

class ExampleResource(object):

    def on_get(self, req, resp):
        resp.set_cookie('foo', 'bar')
        resp.body = 'bar'


class BarResource(object):

    def on_get(self, req, resp):
        resp.body = req.cookies.get('foo')
+2
source

Source: https://habr.com/ru/post/1661192/


All Articles