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

pos7271님의 프로필 이미지
pos7271

작성한 질문수

따라하며 배우는 노드, 리액트 시리즈 - 기본 강의

노드 리액트 기초 강의 #11 로그인 기능 with Bcrypt (1)

User.findOne({ email: req.body.email }, (err, user) => { 할때

작성

·

264

0

 req.body.email  을 user.email 로 하면 안되는건가요?

  const user = new User(req.body);
로 객체를 만들었으니
req.body = user 가 되는게 아닌가요?
그리고 User.findOne({ email: req.body.email }, (err, user) =>
여기서 어떻게 err은 에러가 되고 user는 user가 되는지 원리가
궁금합니다 ㅜ 어디서 받아오는 값인가요?

답변 1

4

John Ahn님의 프로필 이미지
John Ahn
지식공유자

req.body 를 이용해서 user값을 가져올수있는것은 body parser라는 모듈을 이용하기 때문인데
그 모듈에서 req.body를 이용해서 가져올수있게 규칙을 만든 후 그 규칙에 맞게 저희가 쓰는것입니다.

그리고 (err, user)  callback 부분도  mongoose 에서 findOne 메소드를 썻을때 콜백 함수에서
첫번쨰 인자는 err 에 관한것을 배출해주고 그다음것은 findOne을 한 것에 값을 전달해주겠다고
약속을 한것이며 그것을 저희는 이용하는것입니다 ! 

Coding을 배우실 때    Coding은 하나의 다른 언어라고 생각하시면 됩니다. 
언어는 약속들이 모아져서 만들어지기때문에 그 약속부분을 저희는 참조해서 배워나가야합니다.
그래서 각각 배우는 것들의 Documentation을 잘 참조하는 것이 좋습니다 ^^ 
수고하세요 ~ ! 

pos7271님의 프로필 이미지
pos7271

작성한 질문수

질문하기