· 4 years ago · Nov 08, 2020, 09:30 PM
1from aiohttp import web
2import aiohttp_session
3from cryptography import fernet
4import base64
5from aiohttp_session.cookie_storage import EncryptedCookieStorage
6
7routes = web.RouteTableDef()
8
9@routes.get("/")
10async def index(request):
11 session = await aiohttp_session.get_session(request)
12 # return web.Response(str(session))
13 return web.Response(text=str(session))
14
15@routes.get("/s")
16async def create_sess(request):
17 print('try log in')
18 session = await aiohttp_session.new_session(request)
19 session['lol'] = 'lolval'
20 raise web.HTTPFound("/")
21
22app = web.Application()
23app.add_routes(routes)
24fernet_key = fernet.Fernet.generate_key()
25secret_key = base64.urlsafe_b64decode(fernet_key)
26aiohttp_session.setup(app, EncryptedCookieStorage(secret_key))
27
28if __name__ == '__main__':
29 web.run_app(app)
30