(Пожалуйста, учтите, что этот вопрос касается декораторов, а не промежуточного программного обеспечения)
Простой декоратор выглядит так:
Код: Выделить всё
def auth_required(func):
def wrapper(*args, **kwargs):
if user_ctx.get() is None:
raise HTTPException(...)
return func(*args, **kwargs)
return wrapper
Код: Выделить всё
@auth_required
@router.post(...)
Код: Выделить всё
@router.post(...)
@auth_required
Итак, мой вопрос: как я могу добавить какие-либо декораторы к конечным точкам FastAPI? Должен ли я войти в router.routes и изменить существующую конечную точку? Или использовать функции типа functools.wraps?
Подробнее здесь: https://stackoverflow.com/questions/644 ... tapi-route