注意接收文件的函数形参名必须为 file,如果是其他则会出现422错误
from fastapi import FastAPI, UploadFile
app = FastAPI()
@app.post("/uploadfile/")
async def create_upload_file(file: UploadFile):# 注意 此处的形参名必须为 file, 使用其他则会造成 422 错误
return {"filename": file.filename}
const onClickUpload = () => {
const file = document.createElement('input')
file.type = 'file'
// accept image
file.accept = 'image/*'
file.onchange = async () => {
const formData = new FormData()
if (!file.files) {
return
}
formData.append('file', file.files[0])
const res = await request.post('/predict', formData, {
headers: {
'Content-Type': 'multipart/form-data'
}
}
file.click()
}