Метод close
Метод close применяется к объекту запроса
Request и закрывает поток тела запроса.
Он вызывается без параметров и возвращает None.
Обычно этот метод используется фреймворком автоматически,
но иногда его вызывают вручную при работе
с потоковой передачей данных или большими файлами.
Синтаксис
await request.close()
Пример
Давайте создадим маршрут, который вручную закрывает тело запроса:
from fastapi import FastAPI, Request
app = FastAPI()
@app.post('/upload')
async def upload(request: Request):
await request.close()
return {'status': 'closed'}
Результат выполнения кода для POST-запроса на адрес /upload:
{"status": "closed"}
Пример
Давайте прочитаем тело запроса и затем закроем его:
from fastapi import FastAPI, Request
app = FastAPI()
@app.post('/read')
async def read(request: Request):
body = await request.body()
await request.close()
return {'length': len(body)}
Результат выполнения кода для POST-запроса с телом 'abcde':
{"length": 5}