File size: 712 Bytes
de6291b
 
ccc7fea
de6291b
 
3ca686a
ccc7fea
de6291b
 
 
 
ccc7fea
de6291b
 
3ca686a
ccc7fea
3ca686a
 
 
de6291b
ccc7fea
de6291b
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
from slowapi import Limiter
from config import ACCESS_RATE
from fastapi import APIRouter, File, Request, Depends, UploadFile
from fastapi.security import HTTPBearer
from slowapi.util import get_remote_address
from .controller import Classify_Image_router

router = APIRouter()
limiter = Limiter(key_func=get_remote_address)
security = HTTPBearer()


@router.post("/analyse")
@limiter.limit(ACCESS_RATE)
async def analyse(
    request: Request, file: UploadFile = File(...), token: str = Depends(security)
):
    result = await Classify_Image_router(file)  # await the async function
    return result


@router.get("/health")
@limiter.limit(ACCESS_RATE)
def health(request: Request):
    return {"status": "ok"}