Newer
Older
This is an Application Server Gateway Interface (ASGI) application
and can be run using uvicorn, or any other ASGI server:
import logging
import os
from fastapi import FastAPI
from starlette.responses import RedirectResponse
from .db import database
LOG_BASIC_CONFIG = os.getenv("LOG_BASIC_CONFIG", "false")
LOG_LEVEL = os.getenv("LOG_LEVEL", "INFO")
if LOG_BASIC_CONFIG == "true":
logging.basicConfig(level=LOG_LEVEL)
app.mount("/ws/secure", secure.app)
@app.on_event("startup")
async def on_startup():
await database.connect()
@app.on_event("shutdown")
async def on_shutdown():
await database.disconnect()
@app.get("/", include_in_schema=False)
async def redirect_to_ws():
return RedirectResponse("/ws")