Как загрузить файлы и список словарей, используя BaseModel Pydantic в FastAPI?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как загрузить файлы и список словарей, используя BaseModel Pydantic в FastAPI?

Сообщение Anonymous »


У меня есть следующий пример кода:

из файла импорта fastapi, UploadFile, Request, FastAPI, Depends от ввода списка импорта из fastapi.responses импортировать HTMLResponse из pydantic импорта BaseModel, Field от ввода импорта Необязательно приложение = ФастAPI() класс BaseBox(BaseModel): л: float=Поле(...) т: float=Поле(...) r: float=Поле(...) б: float=Поле(...) класс BaseInput(BaseModel): поля: List[BaseBox] = Поле(...) слова: List[str] = Поле(...) ширина: Необязательно[float] = Поле(...) высота: Необязательно[float] = Поле(...) @app.post("/submit") определенно отправить( base_input: BaseInput = Зависит(), file: UploadFile = File(...), # Добавьте эту строку, чтобы принять файл ): возвращаться { «Полезная нагрузка JSON»: base_input, «Имя файла»: файл.имя файла, } @app.get("/") Защиту основного (запрос: Запрос): вернуть {"статус":"жив"} но почему-то я не могу заставить это работать. Я использую интерактивную документацию API, но всегда получаю сообщение об ошибке. Думаете, мне придется вместо этого отправить 2 файла? Я тоже пробовал

curl -X 'POST' \ 'http://localhost:8007/submit?width=10&height=10' \ -H 'принять: приложение/json' \ -H 'Тип контента: multipart/form-data' \ -F 'file=@test.png;type=image/png' \ -F 'коробки={ «л»: 0, «т»: 0, «р»: 0, "б": 0 }' \ -F 'words=test,test2,tes3,test' но я всегда получаю сообщение об ошибке "POST /submit?width=10&height=10 HTTP/1.1" 422 Необрабатываемый объект.
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»