[PYTHON] Impossible de télécharger plusieurs images à partir du formulaire avec FastAPI

Aperçu

Ceci est un rappel lorsque j'ai essayé de télécharger plusieurs images sur le serveur backend de fastapi à partir de la balise html <input type =" file "...> normale au lieu d'utiliser js.

Code du problème

index.html


 <html>
        <head>
            <title>Face Swap App</title>
        </head>
        <body>
            <h1>Look ma! HTML!</h1>
            <form enctype="multipart/form-data" method="post" action="swap">
                <input type="file" id="source" name="file"></input>
                <input type="file" id="target" name="file"></input>
                <input type="submit" value="Face Swap">
            </form>
        </body>
    </html>

main.py



@app.post("/swap", response_class=HTMLResponse)
async def create_swapped_image(files: List[UploadFile] = File(...)):
    print(files)
    return """
    <html>
        <head>
            <title>Face Swap App</title>
        </head>
        <body>
            <h1>Success!</h1>
        </body>
    </html>
    """

Solution

En conclusion, il semble que le nom de la balise input devrait être le même que l'argument de la fonction du point de terminaison fastapi! En d'autres termes, l'entrée de index.html

index.html



<input type="file" id="source" name="files">
<input type="file" id="target" name="files">

Il a été résolu en changeant en. Je ne les ai pas tous lus, mais je ne me souviens pas avoir écrit cela dans le document officiel, alors j'ai pensé que ce serait difficile à comprendre. Je suis désolé si je l'ai écrit ...

Recommended Posts

Impossible de télécharger plusieurs images à partir du formulaire avec FastAPI
Publiez plusieurs images Twitter avec python
Animez plusieurs images fixes avec Python
Télécharger et télécharger des images avec Falcon
Convertir une image au format PIL lue depuis un formulaire avec Django au format base64
Télécharger des images sur Google Drive avec Python
Enregistrez plusieurs modèles sous un seul formulaire avec Django
Je souhaite afficher plusieurs images avec matplotlib.
Télécharger en masse des images à partir d'une URL spécifique avec python
Télécharger des images sur S3 avec une interface graphique à l'aide de tkinter
[Mémo] Abonnez-vous aux messages de plusieurs sujets avec ROS
Convertir des images du SDK FlyCapture en un formulaire pouvant être utilisé avec openCV
Les images créées avec matplotlib passent de dvi à pdf
Télécharger en masse des images à partir d'une URL de site spécifique avec python
Supprimer les en-têtes de fichiers CSV à plusieurs formats avec python