Django Rest 框架和 Vue.js;通过谷歌账户登录; “用户已使用此电子邮件地址注册。”

问题描述 投票:0回答:1

我在通过 Google 帐户登录我的网站时遇到一些麻烦。我通过 Google 创建了注册(使用 vue-google-login 然后将该数据发送到我的后端 dj-rest-auth/google/),工作正常。但是,如果我尝试登录用户,我会从后端服务器收到响应“用户已使用此电子邮件地址注册”。我该怎么做才能让用户通过 Google 帐户登录我的网络应用程序?如何登录用户但不注册?

如果有人给出答案,我将不胜感激,因为我浪费了太多时间调试和搜索答案。我将把我的代码放在下面。如果您需要更多信息 - 请告诉我。

谢谢!

# authenticate.views
from allauth.socialaccount.providers.google.views import GoogleOAuth2Adapter
from dj_rest_auth.registration.views import SocialLoginView

class GoogleLogin(SocialLoginView):
    adapter_class = GoogleOAuth2Adapter

#authenticate.urls
from django.urls import path
from . import views
urlpatterns = [
    path('google/', views.GoogleLogin.as_view(), name='google_login')
]
#backend_main.urls
from django.contrib import admin
from django.urls import path, include
from django.conf.urls import url
from authentication.views import GoogleLogin

from backend_main.api_views import get_router_urls

urlpatterns = [
    path('admin/', admin.site.urls),
    path('hr-api/', include(get_router_urls())),
    path('demo-hr-api/', include('backend_main.urls')),
    path('accounts/', include('allauth.urls'), name='socialaccount_signup'),
    path('dj-rest-auth/', include('dj_rest_auth.urls')),
    path('dj-rest-auth/registration/', include('dj_rest_auth.registration.urls')),
    path('dj-rest-auth/google/', GoogleLogin.as_view(), name='google_login'),
]

python django vue.js django-rest-framework google-authentication
1个回答
-1
投票

如果你修复了它,你能给我你的 github 存储库吗?我也有同样的问题

© www.soinside.com 2019 - 2024. All rights reserved.