django naver 소셜로그인

eunji hwang·2020년 6월 4일
0

BACKEND-PYTHON-DJANGO

목록 보기
22/28

장고 소셜로그인 구현

django-allauth

django-allauth 공식문서
직접 구현 하는 것 말고 유~멩한 패키지 사용해서 소셜로그인 구현하기

install

pip install django-allauth

settings.py

# config/settings.py
INSTALLED_APPS = [
	...
    # sites 는 사이트 정보를 설정하기 위해 필요
    'django.contrib.sites',
    
    # allauth 관련 앱 목록 추가
    'allauth',
    'allauth.account',
    'allauth.socialaccount',
    'allauth.socialaccount.providers.naver',
    ]
  • account : 가입계정 관리
  • socialaccount : 소셜 가입계정 관리
  • socialaccount.providers : 어떤 소셜을 사용하는지에 따라 여러개 작성해야 한다!
    django-allauth 공식문서

urls.py

# config/urls.py
urlpatterns = [
    path('admin/', admin.site.urls),
    path('accounts/', include('allauth.urls')), # 로깅 추가
    path('', include('shop.urls')),
]

네이버 API 받기

  1. 네이버 아이디로 로그인 API에서 오픈 API 이용 신청 버튼 클릭
  2. 어플리케이션이름 : 알아서 입력
  3. 사용 API : 네아로(네이버 아이디로 로그인) 선택 후 필요 정보 선택
  4. 로그인 오픈 API 서비스 환경 : 웹인지, 모바일인지 기타 등등인지 선택 (난 웹선택)
  5. 서비스 url : 실도메인이나, http://localhost:포트번호 와 같이 등록
  6. callback url : 각각 다 다르겠지여..데이터를 어디로 넘겨 받을지! allauth 문서참고
  7. '등록하기' 버튼 클릭하면 ClientID와 Client Secret을 받는다!

위 2개의 값을 장고에 등록하면 되는데..
내가 본 책에서는 admin 페이지에 들어가서 등록하란다...허.. 이거 말고 다른 방식으로 하고싶은뒈~
admin 사용하지 않는 장고 프로젝트에서 소셜로그인 등록은.. 다시 알아보기로..ㅋ

social applications 등록

http://localhost:8000/admin/ 으로 접속하여 Social applications + add 버튼을 클릭하여 client id, client secret을 등록하여 마무리한다.

profile
TIL 기록 블로그 :: 문제가 있는 글엔 댓글 부탁드려요!

0개의 댓글