未找到用于LinkedIn OAuth2的python-social-auth后端
我正在尝试在我的应用中使用python-social-auth来集成LinkedIn的oauth2认证。不过,当我在Chrome浏览器中访问127.0.0.1:8000/login/linkedin/时,出现了“找不到后端”的错误。具体来说,日志中显示了以下错误:
[08/Sep/2014 16:44:38] "GET /login/linkedin HTTP/1.1" 301 0
[08/Sep/2014 16:44:38] "GET /login/linkedin/ HTTP/1.1" 404 1608
在我的settings.py文件中,有以下相关代码:
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'github_app',
'tech_seeker',
'social.apps.django_app.default'
)
SOCIAL_AUTH_LINKEDIN_OAUTH2_KEY = "<MY_KEY_HERE>"
SOCIAL_AUTH_LINKEDIN_OAUTH2_SECRET = "<MY_SECRET_HERE>"
SOCIAL_AUTH_STRATEGY = 'social.strategies.django_strategy.DjangoStrategy'
AUTHENTICATION_BACKENDS = (
'social.backends.linkedin.LinkedinOAuth2',
'django.contrib.auth.backends.ModelBackend',
)
SOCIAL_AUTH_PIPELINE = (
'social.pipeline.social_auth.social_details',
'social.pipeline.social_auth.social_uid',
'social.pipeline.social_auth.auth_allowed',
'github_app.auth_pipeline.user'
)
任何帮助都非常感谢。
1 个回答
11
因为你使用了OAUTH2,所以你需要更改你的网址来使用OAUTH2。
<a href="{% url 'social:begin' backend='linkedin-oauth2' %}">LinkedIn</a>