170 похожих чатов

Почему мои exception_handlerы не регаются в фастапи? делаю запрос на http://localhost:8000/v1/auth/protected сервер

падает с 500 2023-05-24 15:15:19 fastapi_jwt_auth.exceptions.MissingTokenError

хотя есть вот такой код

def authjwt_exception_handler(request: Request, exc: AuthJWTException):
return JSONResponse(
status_code=exc.status_code,
content={"detail": exc.message}
)


def include(app: FastAPI) -> None:
"""Include auth exception handlers"""

app.exception_handler(AuthJWTException)(authjwt_exception_handler)

и я вызываю include в мейне

from presentation.v1 import include_routers, include_exception_handlers

from core.settings import load_settings
from core.db import get_session, get_async_sessionmaker

from sqlalchemy.orm import Session

app = FastAPI()


@app.on_event("startup")
async def on_startup():
settings = load_settings()
async_sessionmaker = await get_async_sessionmaker(settings.db)

app.dependency_overrides[Session] = lambda: get_session(async_sessionmaker)

include_routers(app)
include_exception_handlers(app)

5 ответов

21 просмотр

а зачем регать хендлеры для исключений в стартапе?

https://github.com/encode/starlette/blob/master/starlette/applications.py#L118 на момент стартапа мидлварь стек уже есть то, что зарегано - включено не будет

lubaskinc0de-🎁 Автор вопроса
Max Zhenzhera
https://github.com/encode/starlette/blob/master/st...

а роутеры тогда почему регаются?

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта