실제로 백엔드 구현 시, 에러를 굉장히 많이 마주칠 수 있다. 그럴 때 마다 각각의 에러를 처리하기에는 코드도 지저분해지고, 매번 처리해주어야해서 귀찮은 점이 많다. 또한 에러를 일관되게 처리를 못하게 된다.
이를 위해 app.errorhandler라는 데코레이터를 사용하면 된다. api가 실행중일 때 발생한 에러를 처리해주는 데코레이터이다. 사용방법은 아주 간단하다.
이런 데코레이터 하나를 작성해주면 된다.
그렇게 되면 위의 api를 실행하더라도
이와 같은 출력을 낸다. 즉, 에러를 잘 핸들링 한 후에 서버에러를 리턴하는 것 까지 가능하다는 것이다.
데코레이터의 파라미터로 Exception을 주면 모든 예외를 처리하게 되지만, 에러 이름을 넣게 된다면 그 에러만 처리하게 된다.
이렇게 작성한다면, handle_exception2만 실행시키게 된다.
'개발' 카테고리의 다른 글
relationship (1) | 2023.08.28 |
---|---|
[Flask] traceback (0) | 2023.08.21 |
[flask] 로그 출력 (0) | 2023.08.21 |
[sql, sqlalchemy] 연결된 두 테이블 cascade 설정하기 - 2 (uselist 설정) (2) | 2023.08.10 |
[sql, sqlalchemy] 연결된 두 테이블 cascade 설정하기 (0) | 2023.08.07 |