강의

멘토링

커뮤니티

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

gigo96님의 프로필 이미지
gigo96

작성한 질문수

[리뉴얼] React로 NodeBird SNS 만들기

게시글 좋아요

Post.findOne을 미들웨어로 분리했을 때 객체 전달 방법이 궁금합니다.

작성

·

274

·

수정됨

0

const post = await Post.findOne({
    where: {
      id: req.params.postId,
    },
  });

  if (!post) return req.status(403).send('존재하지 않는 게시글');

id에 맞는 게시물을 찾는 코드가 생각보다 중복이 생기는 것 같아서 미들웨어로 분리 하려고 합니다.

이 때, 미들웨어로 분리하게 된다면

const findPost = async (req, res, next) => {
  const post = await Post.findOne({
    where: {
      id: req.params.postId,
    },
  });

  if (!post) return req.status(403).send('존재하지 않는 게시글');
  req.post = post;
  next();
};

해당 방식으로 미들웨어로 분리를 하고, post 객체를 req에 담아서 보내도록 했는데요.

혹시 다음 미들웨어에서만 사용가능하게 데이터를 전달할 수 있는 방식이나 req에 담아서 보내지 않는 방식이 있는지 궁금합니다.

답변 1

1

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

res.locals 객체 안에 담아보내시면 됩니다

gigo96님의 프로필 이미지
gigo96
질문자

헉 어떻게 이렇게 빨리 답장을 하실 수 있는지;; 감사합니다!

gigo96님의 프로필 이미지
gigo96

작성한 질문수

질문하기