Метод on_event
Метод on_event применяется к приложению
FastAPI и вешает функцию на событие жизненного цикла.
Первым параметром передаётся имя события: 'startup'
или 'shutdown'. Функция-обработчик выполняется
один раз: при старте приложения или при его остановке.
Синтаксис
@app.on_event(event)
Пример
Давайте повесим обработчик на событие 'startup':
from fastapi import FastAPI
app = FastAPI()
@app.on_event('startup')
def start():
print('hello')
@app.get('/')
def index():
return {'text': 'hello'}
Результат выполнения кода в терминале при запуске сервера:
"hello"
Пример
Давайте повесим обработчик на событие 'shutdown':
from fastapi import FastAPI
app = FastAPI()
@app.on_event('shutdown')
def stop():
print('abcde')
@app.get('/')
def index():
return {'text': 'article'}
Результат выполнения кода в терминале при остановке сервера:
"abcde"
Пример
Давайте зарегистрируем два обработчика и выведем сообщения при запуске и остановке приложения:
from fastapi import FastAPI
app = FastAPI()
@app.on_event('startup')
def start():
print('user')
@app.on_event('shutdown')
def stop():
print('hello')
@app.get('/')
def index():
return {'text': 'hello'}
Результат выполнения кода в терминале:
"user"
"hello"
Смотрите также
-
метод
add_event_handler,
который добавляет обработчик события без декоратора -
событие
startup,
которое срабатывает при запуске приложения -
событие
shutdown,
которое срабатывает при остановке приложения -
параметр
lifespan,
который управляет жизненным циклом приложения