17 lines
534 B
Python
17 lines
534 B
Python
from fastapi import APIRouter, HTTPException
|
|
from fastapi.responses import Response
|
|
|
|
from app.schemas.qr import QRRequest
|
|
from app.services.qr_service import generate_qr_image_bytes
|
|
|
|
router = APIRouter()
|
|
|
|
|
|
@router.post("/generate")
|
|
async def generate_qr(payload: QRRequest):
|
|
try:
|
|
img_bytes = generate_qr_image_bytes(payload.text, payload.size)
|
|
return Response(content=img_bytes, media_type="image/png")
|
|
except Exception as exc: # pragma: no cover
|
|
raise HTTPException(status_code=500, detail=str(exc))
|