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

호코더님의 프로필 이미지
호코더

작성한 질문수

[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지

deserializeUser 이해하기

login시 email,password의 전달

작성

·

117

0

안녕하세요!

 

회원가입 폼에서 버튼을 누르면 email,nick,password가 req.body에 담겨와 해당 email을 DB에서 조회해서 존재유무를 파악하여 계정을 DB에 생성하는 로직은 이해가 가는데 login시에 email과 password를 어떤식으로 전달받아 사용하는지 잘 모르겠습니다. passport를 사용해서 그냥 외워야하는건가요? 

localStrategy에서 async(email,password,done)=>{...}으로 email과 password를 가져오는데 여기서 이걸 어디서 가져오는건지를 잘 모르겠네요. 

html에서 넘겨준 req.body에서 email,password를 회원가입과 같이 사용해야한다고 생각하는데 그런 로직이 보이지 않아서요 ..!

 

감사합니다.

답변 1

1

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

우선 제가 강좌에서 알려드린 passport 흐름 그대로 따라가시면 됩니다.

로그인 라우터에서 passport.authenticate('local')을 하면 req.body.email, req.body.password이 localStrategy의 email, password로 전달됩니다. passport.authenticate 함수 내부에서 req.body를 읽고 넘기는 거라서 겉으로 보이지는 않습니다.

이렇게 남의 라이브러리를 사용할 경우에는 외워야하는 게 좀 있습니다.

호코더님의 프로필 이미지
호코더

작성한 질문수

질문하기