인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

Jin Lee님의 프로필 이미지
Jin Lee

작성한 질문수

리액트로 나만의 블로그 만들기(MERN Stack)

(11) UserRoutes

err부분에서 질문입니다.

작성

·

159

0

err처리하는 스크립트가 다르더라고요

1)  if(err) throw err 

2)  if(err) return res.status(400).json({msg : "에러 있음"})

이렇게 두가지로 있는것 같은데, 1)은 에러를 그냥 버리고 2)는 에러가 있으면 응답으로 넘겨라 라는 것 같아요. 이걸 구분해서 쓰는 기준이 있나요?

혼자 복습해서 스크립트 작성하는데 이런게 햇갈립니다.

-추가질문-

그리고 res에다 status(번호)를 붙이는 데, 어떤건 status를 사용하고, 어떤건 안하는지 그 기준이 궁금합니다.

답변 1

0

싸플님의 프로필 이미지
싸플
지식공유자

(요약) 제일 좋은 것은 개발을 위해 status를 붙여 주는 것이 좋습니다. 그래야 어디서 에러가 났는지 코드보고 쉽게 확인 가능합니다. 

다만, production 상태에서는 숨기는 것이 좋습니다. 너무 친절하게 상태가 어떤지 공격하는 사람에게 알려줄 필요가 없거든요. 

※ (참고) errorHandler(미들웨어)를 만들어서 process.env.NODE_ENV가 dev 인지 production인지에 따라 일괄적으로 상태코드를 숨길수도 있습니다. 

※ (참고) 상태코드 https://developer.mozilla.org/ko/docs/Web/HTTP/Status

Jin Lee님의 프로필 이미지
Jin Lee

작성한 질문수

질문하기