Starlette 2

[ FastAPI ] HTTPException에서 CustomException으로 예외 처리 개선

BaseResponse, 예외 상황에서도 잘 동작할까? 대화 속에서 발견한 설계 실수{ status_code : INT (200, 400, ... 같은 상태코드), data : 응답 DTO ( 실질적 데이터 ) message : STRING ( 추가적인 메세지 ) } 어제 안드로이드 개발자분과 이야기하면서, Exception 응답도 BaseResponse 형태로 내려주면 되는지에 대한 질문을 받았다."아뇨, 정상처리 됐을 때만 해당 응답구조로 내려줍니다." 아니 애초에 BaseResponse 클래스를 처음 만든 이유가 예외 처리든 정상 처리든 일관성 있게 응답을 관리하고, 클라이언트에서 에러 핸들링을 더 쉽게 할 수 있도록 하기 위해서였는데, 왜 그렇게 짰는지 의문이 들었다. (좋은 부분을 캐치해주신 ..

[ FastAPI ] Response 구조 분석 및 공통 구조 커스텀하기

미들웨어 적용도 해볼 겸 API response 구조를 통일해보려 했다.문서를 보니, 미들웨어 적용 자체는 꽤 간단했다. ( response 내부 까보기 전까진..ㅎ ) https://fastapi.tiangolo.com/tutorial/middleware/#create-a-middleware Middleware - FastAPIFastAPI framework, high performance, easy to learn, fast to code, ready for productionfastapi.tiangolo.com pydantic으로 BaseResponse 클래스 만들고 적용 base_response.pyclass BaseResponse(BaseModel): """공통 response DTO"""..