• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

req. 에 대한 질문입니다

21.08.18 08:42 작성 조회수 226

0

강의와 책을 계속해서 같이 보고 있는데 한가지 이해가 되지 않는 부분이 있습니다. req라는 객체에 property는 언제 정해지는 건가요?  지금 다른 파일을 만들어서 req.user같은 걸 받아보면 전부 빈 객체로 나오는데 소스 코드속에서 req.user나 req.login() 이런 것들이 언제 설정되는 것인지 이해가 되질 않습니다. 

js 에서는 객체에 대해서 obj.아무거나 이렇게 바로 생성할 수 있다는 것은 알고 있습니다만 그 값은 적어도 초기화 과정이 있어야 하는 것 아닌가요? 

미들웨어에서 req로 데이터가 들어가는 전송 방식을 제가 잘못 알고 있는 것일가요..?

답변 1

답변을 작성해보세요.

0

neostgeart님의 프로필

neostgeart

질문자

2021.08.18

app.use((req, res, next) => {
req.data = "hard to study";
console.log(req.data);
next();
})
제가 직접 만든 코드인데 이걸 보면 req.data라는 프로퍼티를 만들고 이를 넣었을 땐 req.data가 잘찍히듯이 위의 질문 내용처럼
req.user나 req.login()같은 것들을 따로 설정해주어야 하는 부분이 있어야 하는 것 아닌가요? 과연 이들이 어디서 초기화가 되는지
잘 이해가 되질 않습니다.

req.login, req.logout은 app.use(passport.initialize()) 할 때 생성됩니다.

req.user는 deserializeUser가 호출될 때 생성됩니다.

각각 생성되는 시점이 다르고 겉으로는 보이지 않으므로 항상 공식문서 읽는 습관을 들여야 합니다.

neostgeart님의 프로필

neostgeart

질문자

2021.08.18

항상 이렇게 명쾌하게 답변주셔서 너무 감사드립니다!

채널톡 아이콘