Spaces:
Running
Running
import logging | |
import uvicorn | |
from fastapi import APIRouter, FastAPI | |
from fastapi.middleware.cors import CORSMiddleware | |
from fastapi.responses import FileResponse | |
from fastapi.staticfiles import StaticFiles | |
from app.modules.querySearch.routes.querySearch_route import ( | |
router as query_search_routes, | |
) | |
from app.modules.uploadDocument.routes.uploadDocument_route import ( | |
router as upload_file_routes, | |
) | |
from app.modules.clearVariables.routes.clearVariables_route import ( | |
router as clear_variables_routes, | |
) | |
app = FastAPI() | |
origins = [ | |
"http://localhost:8000", | |
"http://localhost:3000", | |
"https://your-space-name.hf.space", | |
"localhost:8000", | |
"https://abadesalex-docurag.hf.space/api", | |
] | |
app.add_middleware( | |
CORSMiddleware, | |
allow_origins=origins, | |
allow_credentials=True, | |
allow_methods=["*"], | |
allow_headers=["*"], | |
) | |
app_router = APIRouter(prefix="/api") | |
app_router.include_router(upload_file_routes, prefix="/upload", tags=["upload"]) | |
app_router.include_router(query_search_routes, prefix="/query", tags=["query"]) | |
app_router.include_router(clear_variables_routes, prefix="/clear", tags=["clear"]) | |
async def root(): | |
return {"message": "Hello World"} | |
# Serve static files from the 'out/_next/static' directory | |
app.mount("/_next/static", StaticFiles(directory="app/out/_next/static"), name="static") | |
# Serve the main index.html | |
def read_root(): | |
return FileResponse("app/out/index.html") | |
async def startup_event(): | |
logging.info("Application is starting up...") | |
async def shutdown_event(): | |
logging.info("Application is shutting down...") | |
app.include_router(app_router) | |