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.
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>
"""
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