Метод add_event_handler
Метод add_event_handler применяется к приложению
FastAPI и вешает функцию на событие жизненного цикла.
Первым параметром передаётся имя события в виде строки,
например 'startup' или 'shutdown'.
Вторым параметром передаётся функция-обработчик,
которая будет вызвана при наступлении события.
Метод удобен, когда обработчик нужно зарегистрировать
динамически, а не через декоратор.
Синтаксис
@app.add_event_handler(event, func)
Пример
Давайте зарегистрируем обработчик события 'startup':
from fastapi import FastAPI
app = FastAPI()
async def on_startup():
print('Application started')
app.add_event_handler('startup', on_startup)
@app.get('/')
def index():
return {'text': 'hello'}
При запуске приложения в консоль будет выведено:
"Application started"
Пример
Давайте зарегистрируем обработчик события 'shutdown':
from fastapi import FastAPI
app = FastAPI()
async def on_shutdown():
print('Application stopped')
app.add_event_handler('shutdown', on_shutdown)
@app.get('/')
def index():
return {'text': 'hello'}
При остановке приложения в консоль будет выведено:
"Application stopped"