• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

err부분에서 질문입니다.

21.01.10 16:09 작성 조회수 99

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