django-rest-auth авторизация в социальной сети Google по токену доступа - PullRequest
0 голосов
/ 01 февраля 2019

Я использую django-rest-auth для социальной аутентификации через API.Я настроил Facebook, и он отлично работает, но у меня есть некоторые проблемы с авторизацией в социальных сетях Google.

  1. Я добавил в INSTALLED_APPS:
allauth.socialaccount.providers.google',
Создано просмотров:

from allauth.socialaccount.providers.google.views import GoogleOAuth2Adapter
from allauth.socialaccount.providers.oauth2.client import OAuth2Client

class CustomGoogleOAuth2Adapter(GoogleOAuth2Adapter):
    basic_auth = False


class GoogleLogin(SocialLoginView):
    adapter_class = CustomGoogleOAuth2Adapter
    client_class = OAuth2Client
Создание приложения с помощью панели администратора У меня есть access_token из https://developers.google.com/oauthplayground/ Когда я пытался войти в систему с помощью конечной точки, я получил ошибку:
Reverse for 'redirect' not found. 'redirect' is not a valid view function or pattern name.

1 Ответ

0 голосов
/ 07 февраля 2019

Трудно точно указать ошибку, поскольку вы не включили остальные свои коды.Ошибка просто означает, что она не может найти URL с именем 'redirect'.Таким образом, есть две вещи, которые вы можете проверить:

urlpatterns = [
    ...,
    url(r'^rest-auth/', include('rest_auth.urls'))
]
  • Или, может быть, вы забыли URL-адрес перенаправления, когда указали социальное приложение Google, согласно документу django-all-auth ?

В разделе «API & auth» перейдите в «Учетные данные» и создайте новый идентификатор клиента.Возможно, вам понадобится идентификатор клиента «веб-приложения».Укажите свое доменное имя или тестовое доменное имя в «Авторизованных источниках JavaScript».Наконец, заполните http://127.0.0.1:8000/accounts/google/login/callback/ в поле «URI авторизованного перенаправления».Вы можете заполнить несколько URL-адресов, по одному для каждого тестового домена.После создания идентификатора клиента вы найдете все детали для конфигурации Django на этой странице.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...