[TIL] 2019-11-27

Google login을 처리하지 못해서 몇 일 동안 삽질하다가 결국 오늘 해결했다.

Google login을 구현에 두 가지 어려움이 있었다.

첫 번째는 Google의 OAuth 사용자 동의 화면이다.

도메인도 필요하고 개인정보처리방침 링크도 넣으라고 하는데 경험이 부족해서인지 처리하는데 상당히 어렵고 부담스러웠다.

결국 도메인도 구하고 AWS를 사용하여 진행을 했다.

진행하고 보니 우회방법도 있을 것 같긴하다. 결론적으로는 좋은 경험이 되었다고 생각한다.

두 번째는 현재 만들고 있는 프로젝트가 front(Next.js), api 서버 구조로 되어 있는 점이다.

흔히 찾아볼 수 있는 예제가 react 만으로 만들어진 페이지에서 Google login을 처리하거나, express에서 view를 한번에 처리하는 구조에서 passport를 사용한 것들이었다.

그러한 방식을 front, api 서버로 분리된 구조에 적용해보려고 하니 막히는 부분이 많았다.

몇 일 삽질하다가 다음과 같은 방식으로 변경했다.

front에서 react-google-login을 이용하여 Google에서 id_token을 받는다.

그리고 해당 token을 api 서버에 전달한다.

api 서버는 token을 Google에 전달하여 최종적으로 원하는 데이터를 수신하여 인증 처리를 한다.

막상 구현해보니 그리 어려운 과정이 아니었는데 왜 몇 일이나 삽질을 했는지 모르겠다.

Google login에 성공하고 나니 Github, Facebook login도 추가하고 싶어진다.

어서 어서 다음 단계로 가자~


Written by@[Suho]
뭐든지 만들어보자.