inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

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

콜백함수가 헷갈려서 질문 드립니다!

272

huhu

작성한 질문수 11

0

index.js에서 user.comparePassword를 호출할 때

req.body.passwod로 비밀번호를 인자로 전달하고

뒤에 err, isMatch는 comparePassword 메소드에서

cb(err)과 cb(null, isMatch)로 받아와서

비밀번호가 틀렸습니다 쪽으로 넘어가는 것 같은데

제가 이해한 게 맞을까요...??

react nodejs

답변 1

2

John Ahn

안녕하세요 !!! 

1) user.comparePassword(req.body.password  

2)

//plainPassword 1234567 암호회된 비밀번호 $2b$10$l492vQ0M4s9YUBfwYkkaZOgWHExahjWC
bcrypt.compare(plainPassword, this.password, function (err, isMatch) {
if (err) return cb(err);
cb(null, isMatch)

3)

(err, isMatch) => {
// console.log('err',err)

// console.log('isMatch',isMatch)

if (!isMatch)
return res.json({ loginSuccess: false, message: "비밀번호가 틀렸습니다." })

//비밀번호 까지 맞다면 토큰을 생성하기.
user.generateToken((err, user) => {
if (err) return res.status(400).send(err);

// 토큰을 저장한다. 어디에 ? 쿠키 , 로컳스토리지
res.cookie("x_auth", user.token)
.status(200)
.json({ loginSuccess: true, userId: user._id })
})
}) 

이러한 순서로 됩니다 ! 

MG K님이 말씀해주신게 맞습니다 ! 

0

huhu

감사합니다!!

깃 이메일이랑 비번이 필요하다고 하네요

0

36

1

404 에러

0

103

1

34강 인증 체크에서 element 사용 때문에 에러나시는 분들 이렇게 하심 됩니다.

0

121

1

로그인, 로그아웃, 토근 작동 안 함

0

240

0

9강 오류 어떻게 해결하나요?

0

195

1

localhost 에서 연결을 거부했습니다.

0

1927

4

포스트맨에서 true가 안떠요

0

151

1

왜 안되나요

0

130

1

몽고db 연결 오류가 납니다 위에껀 입력한 코드, 아래껀 터미널이에요

0

243

1

로그아웃 401 에러(Unauthorized)

0

505

2

암호가 해싱되지 않고 입력값 그대로 db에 저장되는 문제

0

150

1

7강중에서

0

163

2

User.findByToken is not a function

0

212

1

루트 디렉토리

0

272

1

useState

0

561

1

프록시 잘 설정했는데도 404 오류 뜨는 분들

5

875

6

webpack 관련 에러 질문

0

220

1

리액트 관련 질문

0

273

1

14강 로그아웃 안됨

0

319

1

mongoDB 데이터 확인하는 법

0

411

1

postman 에러

0

292

1

선생님 리덕스를 사용하면 어떠한 부분이 좋은지 알 수 있을까요?

0

235

1

다음과 같은 에러들이 발생합니다.

0

274

1

14강 로그아웃 기능 구현시 postman에서 Cannot POST 오류가 뜹니다.

0

380

1