• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

491
Views
API rápida: Manejo de excepciones globalmente

Estoy tratando de hacer que el controlador de excepción funcione en un proyecto grande. Sin embargo, el controlador de excepciones no se ejecuta como se esperaba. ¿Alguna sugerencia sobre lo que me podría estar perdiendo?

Estructura del proyecto simplificada:

 project __init__.py main.py common __init__.py ex_handler.py

Tengo la estructura del proyecto anterior.

app.py

 app = FastAPI() app.include_route(xyz)

Estoy importando este objeto enException_handler.py que tiene un código para manejar todas las excepciones relacionadas con la aplicación.

 from project.main import app @app.exception_handler(CustomException) def handle_custom_ex(request: Request, exception: CustomException): ...

Sin embargo, el controlador de excepciones no se ejecuta como se esperaba. Si moví el controlador de excepción a app.py, funciona.

Referencia: https://fastapi.tiangolo.com/tutorial/handling-errors/?h=exception#install-custom-exception-handlers

about 3 years ago · Santiago Trujillo
1 answers
Answer question

0

Creo que quieres ir por el otro lado, es decir, importarException_handler en main.py exception_handler

 # exception_handler.py class MyException(Exception): def __init__(self, name: str): self.name = name
 # main.py from project.common.exception_handler import MyException ...

En los documentos, definen la clase en su main.py y luego pueden usarla en el objeto de la app FastAPI.

Tenga en cuenta que deberá hacer esto desde cualquier módulo en el que desee utilizar la clase de excepción personalizada.

about 3 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error