• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

클라이언트 오류 처리

21.04.03 00:14 작성 조회수 137

2

안녕하세요 선생님.

예를 들어, 글을 작성하는 post api controller에서 400번대 에러처리를 위한 로직을 작성할 때, req.body로온 json형태의 크기가 큰 경우 일일히 if문으로 검사를 하게되면 코드가 길어지게 되어서 가독성이 떨어질꺼 같은데 이 같은 경우에는 다른 방법이 존재하나요?

 또한 TS를 공부해서 type으로 인한 에러처리도 백엔드 개발자가 구현해놓으면 좋은지도 여쭤보고 싶습니다.(실무에서도 백엔드 개발 시 ts가 많이 쓰이는지 궁금합니다)

수업 잘 듣고 있습니다

감사합니다!

답변 1

답변을 작성해보세요.

2

Dev님 안녕하세요 :)

말씀하신대로 if문으로 처리하면 가독성이 다소 떨어질 수도 있어요. 강의에서 MongoDB를 사용 한개발을 하기 위해 express관련해서는 "기본적인" 방법들만 다루었는데요. 이 경우 미들웨어로 검증을 로직을 외부로 뺄 수 있어요. 직접 개발 할 수도 있구요 express-validator와 같은 모듈을 사용할 수 있어요.

해당 공식문서 들어가보시면 첫번째 코드 블록은 검증 과정이 없는 코드에요. 두번째 코드 블록에 미들웨어로 검증 하는걸 확인하실 수 있어요. 하지만 보시다시피 코드가 "많이" 간결해지지는 않아요. 그래서 그냥 if문으로 처리하는 경우도 흔하긴 합니다.

저 같은 경우 GraphQL을 애용하는데요. 가장 큰 장점 중 하나가 백엔드와 클라이언트 사이에 기본적인 타입 체킹은 다 해줘요. 말씀하신 텍스트의 크기를 제한하는 것들은 custom scalar같은걸 만들어서 간결하게 관리가 가능하고요. 이미지 업로드 관련 강의 작업중인데요. 이어서 GraphQL 강의 출시할 예정인데 그 때 참고하시면 좋을듯 합니다!

Typescript는 정말정말 좋아요. Typescript를 안써본 개발자는 있어도 한번 사용해본 개발자는 없다고 생각할 정도에요. 정말 신기하게도 로직 오류보다도 타입 정의를 잘못해서 발생하는 오류가 정말 많아요. 이런 오류를 배포전에 모두 잡을 수 있다고 보면 되요. 그래서 왠만하면 실무에서 Typescript를 사용할거에요. 다만 학습 차원에서는 Typescript를 너무 서두를 필요는 없다고 봐요. 기본을 충실하게 하고 나중에 Typescript를 훌륭한 보조수단으로 배워보시면 좋을듯 합니다 :)

Dev님의 프로필

Dev

질문자

2021.04.04

항상 좋은 답변 감사드립니다!

많이 배워갑니다!