diff --git a/main.py b/main.py index e9e793e..f4c6d38 100644 --- a/main.py +++ b/main.py @@ -50,7 +50,21 @@ app, rt = fast_app( app.mount("/Logo", StaticFiles(directory="Logo"), name="Logo") -app.mount("/Media", StaticFiles(directory=dossier_media), name="Media") +#app.mount("/Media", StaticFiles(directory=dossier_media), name="Media") + +# --- ROUTE ANTI-BUG RAID (LECTURE DIRECTE EN RAM) --- +@rt('/Media/{fname:path}') +def get(fname: str): + chemin = os.path.join(dossier_media, fname) + if os.path.exists(chemin): + try: + with open(chemin, "rb") as f: + donnees = f.read() + return Response(content=donnees, media_type="image/png") + except Exception as e: + print(f"Erreur critique lors de la lecture de {chemin} : {e}") + return HTMLResponse("Erreur interne", status_code=500) + return HTMLResponse("Fichier non trouvé sur le disque", status_code=404) # --- ROUTES D'AUTHENTIFICATION --- @rt('/login')