작성
·
1.8K
·
수정됨
답변 1
1
안녕하세요 :)
답변 드립니다. 더 궁금하신 점 있으시면 언제든지 답글 달아주세요!
Cannot set headers after they are sent to the client에러는 보통 "서버가 클라이언트에게 2개 이상의 응답을 보내려고 할 때" 발생하는 오류로 유명합니다.
예를 들어서 프론트엔드(postman, react, app .. 등)에서 request를 1번 보내면 특수한 경우가 아닌 이상 response를 1번 보내어 1:1로 보내야 합니다.
해당 코드를 보지 않고는 제가 정확히 모르겠지만, 제 경험 상 보통 NestJS에서 해당 오류를 낼 때는
controller 부분에서res.status(statusCode).json(data);
return;
라고 쓰면 납니다 왜냐하면 controller 부분에서 response(혹은 res) 객체를 쓰자마자 응답이 내려가기 때문입니다. (nodejs의 express 특성입니다.)
위 상황이 맞다면return res.status(statusCode).json(data);
와 같이 쓰는 것이 맞습니다. :)