Я хочу реализовать функцию входа в Google, я использую django rest и reactjs, я видел учебник, но они на ядре django, и я сталкиваюсь с трудностями, однако после большого количества исследований у меня есть видел django социальный auth2, через который мы можем войти через google, используя django rest, получив токен, но я запутался, так как не могу понять, как это работает, мой прогресс пока:
INSTALLED_APPS = [
......
......
# social-auth
'oauth2_provider',
'social_django',
'rest_framework_social_oauth2',
]
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'solid_proto', 'templates', 'allauth')],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
......
......
'social_django.context_processors.backends',
'social_django.context_processors.login_redirect',
],
},
},
]
AUTHENTICATION_BACKENDS = (
# `allauth` specific authentication methods, such as login by e-mail
'allauth.account.auth_backends.AuthenticationBackend',
# Google OAuth2
'social_core.backends.google.GoogleOAuth2',
'rest_framework_social_oauth2.backends.DjangoOAuth2',
'django.contrib.auth.backends.ModelBackend',
)
SOCIAL_AUTH_GOOGLE_OAUTH2_KEY = key
SOCIAL_AUTH_GOOGLE_OAUTH2_SECRET = Secret
SOCIAL_AUTH_GOOGLE_OAUTH2_SCOPE = [
'https://www.googleapis.com/auth/userinfo.email',
'https://www.googleapis.com/auth/userinfo.profile',
]
Это должно произойти, как если бы пользователь нажал на вход в Google, чтобы отреагировать, а затем в бэкэнде будет введен API, а также учетные данные пользователя (имя пользователя и пароль Google), если учетные данные аутентифицированы, будет возвращен токен, который будет в дальнейшем используется для доступа к API системы. Пожалуйста, направьте меня или поделитесь со мной хорошим источником благодарности!