Этот вопрос проверяет знания об обработке загрузки файлов в FastAPI с использованием встроенных возможностей для работы с файлами.
В FastAPI файлы можно загружать с помощью типа UploadFile из модуля fastapi. Это позволяет работать с файлами асинхронно, что делает процесс эффективным при работе с большими файлами.
FastAPI упрощает загрузку файлов, поддерживая тип UploadFile, который является асинхронным и помогает эффективно работать с большими файлами. Для загрузки файла нужно создать эндпоинт, который принимает параметр типа UploadFile. Этот тип поддерживает асинхронную работу и имеет несколько методов, таких как .filename и .read(), для взаимодействия с файлом.
Пример загрузки файла в FastAPI:
from fastapi import FastAPI, File, UploadFile
app = FastAPI()
@app.post("/upload/")
async def upload_file(file: UploadFile = File(...)):
return {"filename": file.filename}В этом примере FastAPI будет обрабатывать загрузку файла и автоматически управлять хранением файла в памяти или на диске в зависимости от размера файла. Также можно выполнить валидацию типа файла и его размера.
Когда использовать:
Когда нужно реализовать загрузку файлов, например, для обработки изображений или документов.