Files
CalCalculator/main.py

37 lines
763 B
Python

from fastapi import FastAPI, Depends, status
from contextlib import asynccontextmanager
import database
import models
import logging
logging.basicConfig(
level=logging.INFO,
format="%(asctime)s - %(name)s - %(levelname)s - %(message)s",
datefmt="%Y-%m-%d %H:%M:%S",
)
@asynccontextmanager
async def lifespan(app: FastAPI):
database.init()
yield
database.close()
app = FastAPI(lifespan=lifespan)
@app.get("/me")
async def me(user: models.User = Depends(database.get_user_by_token)):
return user
@app.post("/register", status_code=status.HTTP_201_CREATED)
async def register(user: models.User):
database.register(user)
return user
@app.post("/login")
async def login(user: models.User):
return database.login(user)