AMYMEME / board-golang

simple board website using golang
MIT License
0 stars 0 forks source link

인증 이슈 #10

Closed AMYMEME closed 3 years ago

AMYMEME commented 3 years ago

naver 인증 구현 이슈

네이버에서 제공한 js 스크립트상에서 로그인을 시도하면, [리다이렉트 url]/auth/naver#access_token={access_token}&state={state}&token_type=bearer&expires_in=3600 으로 응답을 뱉는다.

해시뱅은 프래그먼트로 서버에 값이 전달되지 않아서 저 값들을 조회할수가 없음

-> FIXED 리다이렉트 url을 fe쪽으로 설정하고, 거기서 다시 be로 토큰값을 전달!

AMYMEME commented 3 years ago

네이버 인증 이슈

사실 뷰를 처음 써봐서 헤맨 과정을 적음

이런식으로 해결

정리하면,

로그인 창-> js script import 및 네아로연동 시도-> 처음 로그인시 이름 가져옴-> 안가져올 시 리다이렉트 페이지에서 콜백함수에 의해 다시 정보 가져오라고 함 -> 가져왔으면 가져온 사용자의 이름과 유니크 아이디를 golang으로 전달 -> golang에서는 provider가 naver고, provider_id가 유니크 아이디인 열을 확인-> 존재하지 않으면 디비에 새로 저장 이후 jwt값을 fe에 전달-> 존재하면 그냥 jwt값을 fe에 전달 -> fe에서는 받은 jwt값을 헤더에 붙이고(axios 렌더링) 로컬 스토리지에도 저장 -> 메인페이지로 리다이렉트 및 헤더바 상태 변경됨(로컬 스토리지에 값 있으면 상태 변경됨 by vue store)

AMYMEME commented 3 years ago

카카오 인증 구현 이슈

이번에는 js sdk를 이용하지 않고, REST API 를 이용했더니 cors 문제 발생

이런식으로 해결

카카오가 솔직히 API 명세가 깔끔해보였다 (내가 두번째 구현해 보는거라 쉬운 걸 수도 있음)

AMYMEME commented 3 years ago

공통 이슈

AMYMEME commented 3 years ago

구글 인증 구현 이슈

라이브러리 이용한거 지우고 js script SDK를 이용해보기로 함

이런식으로 해결