РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
32 of 307 menu

Атрибут webhooks

Атрибут webhooks применяется к приложению FastAPI и хранит словарь вебхуков, которые описываются в OpenAPI-схеме. Ключом словаря служит имя вебхука, а значением - маршрут, созданный через APIRouter. Вебхуки не создают реальных эндпоинтов, а лишь документируют входящие запросы, которые внешние сервисы отправляют приложению.

Синтаксис

app.webhooks

Пример

Давайте добавим вебхук 'new-event' в приложение:

from fastapi import FastAPI, APIRouter from pydantic import BaseModel app = FastAPI() class Event(BaseModel): name: str webhook_router = APIRouter() @webhook_router.post('/new-event') def new_event(event: Event): return event app.webhooks = {'new-event': webhook_router}

Теперь описание вебхука попадает в OpenAPI-схему по адресу '/openapi.json':

{"webhooks": {"new-event": {"post": {"summary": "New Event"}}}}

Пример

Давайте прочитаем значение атрибута webhooks:

<+python+> from fastapi import FastAPI, APIRouter app = FastAPI() webhook_router = APIRouter() @webhook_router.post('/new-user') def new_user(): return {'status': 'ok'} app.webhooks = {'new-user': webhook_router} print(app.webhooks) <-python+>

Результат выполнения кода:

{'new-user': <fastapi.routing.APIRouter object>}

Смотрите также

  • класс FastAPI,
    которому принадлежит атрибут webhooks
  • метод openapi,
    который возвращает OpenAPI-схему с вебхуками
  • метод include_router,
    который подключает роутер к приложению
  • атрибут openapi_schema,
    который хранит текущую OpenAPI-схему
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить