queues/main.py
2024-11-17 02:32:25 +03:00

35 lines
717 B
Python

import fastapi
import uvicorn
import os
from app.routers import take
from app.routers import put
from app.routers import finish
from app.storage import mongo
QUEUES_TOKEN = os.getenv('QUEUES_TOKEN')
app = fastapi.FastAPI()
@app.middleware('http')
async def check_token(request: fastapi.Request, call_next):
if QUEUES_TOKEN:
token = request.headers.get('X-Queues-Token')
if not token or token != QUEUES_TOKEN:
raise fastapi.HTTPException(403)
return await call_next(request)
app.include_router(take.router)
app.include_router(put.router)
app.include_router(finish.router)
mongo.create_indexes()
if __name__ == '__main__':
uvicorn.run(app, host="0.0.0.0", port=1238)