init_http_session¶
-
safir.http.
init_http_session
(app: Application) → AsyncGenerator¶ Create an aiohttp.ClientSession and make it available as a
"safir/http_session"
key on the application.Parameters: app ( aiohttp.web.Application
) – The aiohttp.web-based application.Notes
Use this function as a cleanup context:
app.cleanup_ctx.append(init_http_session)
The session is automatically closed on shut down.
To access the session:
http_session = app["safir/http_session"]
From a request handler:
@routes.get("/") async def get_index(request: web.Request) -> web.Response: http_session = request.config_dict["safir/http_session"] ...