해결된 질문
작성
·
2.3K
0
router.get('/logout', isLoggedIn, (req, res) => {
req.logout();
req.session.destroy();
res.redirect('/');
})
라우터에 로그아웃을 잘 작성하였고 세션도 비워주지만 아이디와 비밀번호를 적지 않고 카카오톡 버튼을 눌러도 다른 카카오톡 아이디와 비밀번호를 입력하고 눌러도, 서버를 실행하고 처음 카카오톡 아이디로 로그인한 계정으로 다시 로그인 됩니다. Token이나 login방식에 문제가 있는 것 같은데 어디가 잘못된 것인지 감이 안잡힙니다.
https://devtalk.kakao.com/t/node-js-passport/48774
구글 검색 결과 같은 증상으로 카카오톡에 문의한 사람이 있었으나 저 해결책을 보고 무슨 의미인지 이해하지 못했습니다 ㅠㅜ...
답변 6
1
일단 카카오 로그인 창이 뜰 때(그건 카카오쪽 사이트죠?) 거기서 개발자도구를 켜서 쿠키를 한 번 지워보시겠어요? 만약 그렇게 된다면 저기 카카오 sdk를 써야됩니다.
0
https://devtalk.kakao.com/t/topic/45287
Kakao.Auth.logout()은 토큰을 만료시키는 역할을 하는 것이고 카카오 계정의 로그아웃과는 다르다고 합니다.
그럼 카카오 로그인이 된 경우만 로그아웃을 시키는 방법을 다르게 코딩해야 하는 것인지 다른 SNS들도 비슷한 방식인 것인지 여쭙고 싶습니다.
0
카카오 로그인 창이 뜨기도 전에 로그인이 됩니다. 데브 카카오에 로그인 이후 로그아웃 하면 노드버드도 같이 로그아웃 되는(?) 현상이 있어 일단 로그아웃은 시켰습니다.
https://developers.kakao.com/docs/restapi/user-management#로그아웃 이것을 활용하면 될 것 같습니다만 실력이 부족하여 공부가 더 필요할 것 같습니다 ㅎㅎ.. 감사합니다!
0
0
0
로그아웃 라우터 안에 res.clearCookie함수를 사용해 브라우저에 남아있는 쿠키(Application 탭에서 kakao 관련 쿠키를 찾아보세요)를 지워야될 것 같습니다.