Spaces:
Sleeping
Sleeping
| from fastapi import FastAPI, HTTPException, Security, status | |
| from fastapi.middleware.cors import CORSMiddleware | |
| from fastapi.middleware.trustedhost import TrustedHostMiddleware | |
| from fastapi.security import OAuth2PasswordBearer | |
| from fastapi.security.api_key import APIKeyHeader | |
| from contextlib import asynccontextmanager | |
| from server.routes.mail import router as mailRouter | |
| from server.utils.database import Base, SessionLocal, engine | |
| async def lifespan(app: FastAPI): | |
| # Startup logic | |
| Base.metadata.create_all(engine) | |
| yield | |
| # Shutdown logic | |
| db = SessionLocal() | |
| await db.close() | |
| app = FastAPI( | |
| title="Hiago Docs", | |
| description="This is the documentation for Hiago's API.", | |
| version="1.0", | |
| basePath="/v1", | |
| lifespan=lifespan, | |
| ) | |
| app.add_middleware( | |
| TrustedHostMiddleware, | |
| allowed_hosts=["*"], | |
| ) | |
| origins = ["*"] | |
| app.add_middleware( | |
| CORSMiddleware, | |
| allow_origins=origins, | |
| allow_credentials=True, | |
| allow_methods=["GET", "POST", "PUT", "DELETE"], | |
| allow_headers=["*"], | |
| ) | |
| def home(): | |
| return {"Hiago server is running"} | |
| app.include_router( | |
| mailRouter, | |
| tags=["mail"], | |
| prefix="/v1", | |
| ) |