프로젝트

[프로젝트] MOCO 모각코를 위한 웹서비스 11 - 소셜로그인

Younghun 2022. 8. 29. 17:40

소셜로그인 기능 구현

소셜로그인 기능을 편리하게 구현하기 위해서 django-allauth 라이브러리를 이용했다.

라이브러리를 설치하고 settings.py에 INSTALLED_APPS에 등록해주었다. 그리고 기타 필요한 설정들을 마치면 django에서 할 일은 모두 끝났다.

 

그 다음에는 구현할 소셜 로그인에 해당하는 서비스로 가서 api키를 발급받아서 등록해야한다.

우리 서비스는 구글, 네이버, 카카오, 깃허브 총 4가지를 구현했다.

소셜 로그인

사실 소셜로그인은 라이브러리가 워낙 잘 나와있어서 코드를 짜는데 크게 어려움은 없었다.

그러나 중요한 것은 로그인이 되었을 때 필수 정보가 입력되지 않는다는 점이다. 그래서 그 부분을 보완하기 위해 데코레이터를 만들어봤다.

 

프로필 검사 기능

소셜 로그인 후 redirect되는 메인페이지와 대부분의 페이지들에 프로필을 검사하는 데코레이터를 추가해서 유저가 필수 정보를 입력해야 서비스를 이용할 수 있도록 기능을 구현했다.

데코레이터에 **kargs를 사용한 이유는 request 이외의 id나 category 등을 인수로 받아오는 함수들이 있기 때문이다.

어떤 변수가 오더라도 넘겨줘서 사용할 수 있도록 구현했다.

 

앞으로의 계획

이제 조그만 오류나 세부사항 등을 손보고 aws를 통해 배포할 예정이다.

다음 글에서는 최종 배포된 우리 서비스를 소개해보려고 한다.