9

我正在尝试使用 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'
)

任何帮助表示赞赏。

4

1 回答 1

10

因为您使用 OAUTH2,所以您需要更改您的 url 以使用 oauth2。

<a href="{% url 'social:begin' backend='linkedin-oauth2' %}">LinkedIn</a>
于 2014-12-03T15:36:44.180 回答