inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Node.js 교과서 - 기본부터 프로젝트 실습까지

회원가입 구현

post method 사용시 /join 루트로 들어가면 어쩨서 /auth/join 으로 들어가게 되는 건가요?

263

ryu sin

작성한 질문수 28

0

  1. auth.js 부분에서, router.post 부분에 대해 궁금한 게 있습니다.

이하의 코드에서 '/join' 어드레스와 post 메서드를 써서 접근을 했는데, 설명에는 이렇게 접근하면

auth/join 으로 간다고 하셨습니다. 어째서 인가요?

Get을 사용시에는 /join 했을 경우 /join으로 가는데, 이 경우에는 어떻게 알고 auth/join 으로 보내는 건가요? urlparser가 알아서 하는 건가요?

router.post('/join', isNotLoggedIn, async (req, res, next)=>{

const {email, nick, password} = req.body;

router.post 부분 코드 는 아래와 같습니다.

router.post('/join', isNotLoggedIn, async (req, res, next)=>{

const {email, nick, password} = req.body;

try{

const exUser = await User.find({where:{email}});

if(exUser){

req.flash('joinError', '이미 가입된 이메일입니다.');

return res.redirect('/join');

}

console.time('암호화시간');

const hash = await bcryptjs.hash(password, 12);

console.timeEnd('암호화시간');

await User.create({

email,

nick,

password: hash,

});

return res.redirect('/');

}catch(error){

}

})

  1. 또한, router.post('./login' ~ 부분을 보면, (req, res, next) 등이 쓰이고, 그이후 다시 쓰이는데요, 동일한 변수들이 다시 붙는데요, 왜 인가요?

    클로져에서 이런 방식을 종종 보는데, 여기서는 아닌것 같고.

    시작하자 마자, 변수를 바로 입력해서 바로 실행하게 하기 위함인가요?

코드는 아래와 같습니다.

router.post('/login', isNotLoggedIn, (req, res, next)=>{

passport.authenticate('local', (authError, user, info)=>{ //erro, success, failure

if(authError){

console.error(authError);

return next(authError);

}

if(!user){

req.flash('loginError', info.message);

return res.redirect('/');

}

return req.login(user, (loginError)=>{

if(loginError){

console.error(loginError);

return next(loginError);

}

})

})(req, res, next); // ******************** <<=== 이부분 입니다.

})

mysql javascript mongodb nodejs

답변 3

0

ryu sin

답변 감사합니다. 책도 있고 동영상 강좌도 보고 있습니다 ㅎㅎ.

책이 무거워서, 이북으로 다시구 입하게 될거 같습니다 ㅜ.ㅜ ;

0

제로초(조현영)

아 순간 책 질문으로 착각했네요. 11강 cors 강좌 보시면 cors에서 (req, res, next) 붙이는 이유 설명하는데 같은 이유라고 보시면 됩니다. 미들웨어를 커스터마이징하기 위함입니다.

0

제로초(조현영)

app.use('/auth', authRouter')에서 /auth와 router.get('/join')이 합쳐져 /auth/join이 됩니다.

(req, res, next)부분은 426쪽 보시면 설명되어 있습니다~

실제 서비스에서도 cluster를 사용하나요?

1

314

2

캐싱에 관하여

0

279

3

salt를 실무에서 사용할때 항상 randomBytes로 만들어줘야 하나요?

0

347

1

게시물 올리기 오류

0

408

1

캐슁 이후 로그인창

0

266

1

kakao passport 질문있습니다.

0

493

3

global객체 공유 질문드립니다.

1

418

1

서버가 죽어버리네요

0

1047

8

포링키 문제..

0

235

2

커넥션 플래시 설치문제

0

216

2

익스프레스 제너레이터? 설치문제

0

2586

6

redis 질문입니다.

0

305

1

9장 세션을 DB에 저장시 리다이렉션 오류 발생

0

874

8

프레임워크 선택에 관하여 질문이 있습니다.

0

300

3

시퀄라이즈 질문입니다 ! !

0

588

1

리뉴얼 강의 12강 socket.io에서 req.session접근 관련 질문

0

922

6

oAuth 질문입니다.

0

356

3

GCP 질문입니다.

0

366

1

Passport 모듈 로그인 구현관련

0

720

6

카카오 로그인 관련 질문입니다!!

0

606

4

스스로 해보기 10-16 nunjuncks 질문있습니다

0

499

5

제로초님 HTTP 완벽가이드 추천해주신거 너무 잘 읽었습니다.

0

317

2

gif채팅방 nunjucks관련 질문입니다!

0

338

3

현영님 몽고db관련 질문입니다.

0

233

3