我发现我的社交身份验证登录Google时出现问题,希望能提供一些帮助。知道发生了什么事吗? Facebook和Twitter登录运作良好,但谷歌让我难过。提前谢谢!
我看到的错误消息是" redirect_uri的参数值无效:不允许使用非公共域:http://www.localhost:8000/complete/google-oauth2/"但是,凭据部分中的URI设置为
http://localhost:8000/complete/google-oauth2/
我在登录界面上调用此功能,并将其作为使用google登录的链接。
<a class="btn btn-block btn-social btn-google" href="{% url 'social:begin' 'google-oauth2' %}">
<i class="fa fa-google"></i>Sign up with Google</a>
项目中的网址设置为此。
urlpatterns = [
url(r'^store/', include('store.urls'), name='store'),
url(r'^accounts/', include('registration.backends.default.urls')),
url('', include('social.apps.django_app.urls', namespace='social')),
# url('^soc/', include('social.apps.django_app.urls', namespace='social')),
url(r'^admin/', include(admin.site.urls)),
]
我认为我的后端设置正确:
AUTHENTICATION_BACKENDS = (
'social.backends.facebook.FacebookOAuth2',
'social.backends.google.GoogleOAuth2',
'social.backends.google.GoogleOAuth',
'social.backends.twitter.TwitterOAuth',
'django.contrib.auth.backends.ModelBackend',
)
#Social Auth Keys/Secrets
SOCIAL_AUTH_GOOGLE_OAUTH2_KEY = 'set to the key given'
SOCIAL_AUTH_GOOGLE_OAUTH2_SECRET = 'set to the secret given'