TIL 2018-08-19
오늘 배운 것 & 한 것
1. LTC
드디어 그 네가지를 통합했다. 다른 사람들 또는 공식 예제의 코드에는 분명 로그인에 성공한 후 req.user
가 있는데 나는 그게 계속 안 됬다.
알고보니 쿠키 파서가 역시 필요한 것이었고, passport-local을 쓸 경우 라우트에서 다음과 같이 해 주면 알아서 json 값을 읽어 로그인 처리를 다 해준다.
admin.post('/login', passport.authenticate('local'), adminCtrl.login);
이렇게만 해 놓고 json으로 보내면 그냥 아이디 비밀번호 틀렸을 때 에러 처리까지 싹 다 해준다.. 내부에서는 그냥 OK만 보내면 된다.. 그리고 이렇게 한 다음 쿠키 파서를 설정해 놓았다면 passport가 req.session.머시기.user의 값을 req.user로 갖다 붙여주고(ref 1), 이 이후로는 미들웨어에서는 req.user가 있는지만 확인하면 된다. 신기한 건 bitimulate는 passport를 쓰지도 않는데 그냥 req.user에서 읽는데, koa서버라서 그런건지 아니면 어디 다른 코드에서 그렇게 붙인건지 모르겠다.
Comments