api resiliency improvements

Signed-off-by: Vladimir Mandic <mandic00@live.com>
This commit is contained in:
Vladimir Mandic
2024-11-21 11:28:19 -05:00
parent a5c8bb57c7
commit fa5de3dc22
7 changed files with 81 additions and 35 deletions
+5 -1
View File
@@ -18,10 +18,14 @@ def decode_base64_to_image(encoding, quiet=False):
if encoding.startswith("data:image/"):
encoding = encoding.split(";")[1].split(",")[1]
try:
image = Image.open(io.BytesIO(base64.b64decode(encoding)))
decoded = base64.b64decode(encoding)
data = io.BytesIO(decoded)
image = Image.open(data)
return image
except Exception as e:
shared.log.warning(f'API cannot decode image: {e}')
from modules import errors
errors.display(e, 'API cannot decode image')
if not quiet:
raise HTTPException(status_code=500, detail="Invalid encoded image") from e
return None