[django]장고 개발_10 - 소셜 로그인 구현(google)
- 공유 링크 만들기
- X
- 이메일
- 기타 앱
[django]장고 개발_10 - 소셜 로그인 구현(google)
소셜 로그인은 소셜 서버에서 request를 보내고 token을 주고받으며 로그인 과정을 진행하게 돼요.
먼저 새로운 프로젝트를 만들어서 진행할게요.
소셜 로그인을 구현하기 위해서는 pip 패키지를 설치해야 돼요.
pip install django-allauth
가상환경에서 패키지를 설치해주세요.
setting.py 파일에서 INSTALLED_APPS에 추가
allauth는 install한 내용 provider는 어느 소셜 서버와 소통할지 결정 providers. 원하는 소셜 로그인을 적어주세요.
맨 아래로 내려가서
#소셜로그인 AUTHENTICATION_BACKENDS = ( 'django.contrib.auth.backends.ModelBackend', 'allauth.account.auth_backends.AuthenticationBackend', ) SITE_ID = 1 LOGIN_REDIRECT_URL = '/'
추가해주세요.
web/urls.py 에 path('sociallogin/',include('sociallogin.urls')), 추가 해주세요
from django.urls import path, include from . import views urlpatterns = [ path('sociallogin/',include('allauth.urls')), path('',views.sociallogin, name='sociallogin'), ]
sociallogin에서 urls.py를 생성하고 path를 입력해주세요.
from django.shortcuts import render def sociallogin(request): return render(request , 'sociallogin/sociallogin.html')
views.py도 작성해주세요.
{% extends 'app/base.html' %} {% load socialaccount %} {% providers_media_js %} {% block content %} 구글 로그인 {% endblock %}
templates을 만들어서 sociallogin.html을 만들어주세요.
그리고 가상 환경에서
python manage.py migrate를 해세요.
/admin으로 들어가서 사이트들에서 사이트 변경을 해주세요.
그리고 소셜 애플리케이션 추가로 들어가셔서
google로그인을 설정해주기 앞서
http://console.developers.google.com
google로 접속해서 프로젝트 생성을 진행해주세요.
사용자 인증 정보 -> 사용자 인증 정보 만들기 -> OAuth 클라이언트 ID를 선택해주세요.
OAuth 클라이언트를 만들어 주시면 id와 key가 생성되면 admin
소셜 애플리케이션에 추가해주세요.
index.html에 소셜 로그인 창을 추가해주세요
로그인을 시도하면 에러가 뜰 거예요.
그러면 두 번째 줄을 복사해서
승인된 리디렉션 url에 추가해주세요.
그러면 정상적으로 로그인이 되는 걸 확인할 수 있어요.
from http://hidaol.tistory.com/25 by ccl(A) rewrite - 2020-03-07 00:20:47
- 공유 링크 만들기
- X
- 이메일
- 기타 앱
댓글
댓글 쓰기