typescript - Ladda upp fil till OpenAPI via openapi-ts
Jag försöker ladda upp en multipart-fil till en FastAPI-server med hjälp av OpenAPI för att dela typerna för uppladdningen.
Det här är min klient:
import type { paths } from "./apiTypes";
import createClient from "openapi-fetch";
export let { GET, POST, PATCH, PUT, DELETE, HEAD, TRACE } = createClient<paths>(
{
baseUrl: "http://localhost:8000/",
}
);
Det här är min uppladdningsfildefinition:
load_file_load_post: {
requestBody: {
content: {
"multipart/form-data": components["schemas"]["Body_load_file_load_post"];
};
};
responses: {...
Uppladdning från JS (problemet är nog här):
// formData is new FormData()
await POST('/load', {
body: formData
})
FastAPI :
@app.post("/load")
async def load_file(file: UploadFile = File(...), db: Session = Depends(get_db)):
try:
file_content = await file.read()
Av någon anledning säger FastAPI fortfarande att jag saknar fält (file).