2014-09-08 3 views
6

Я пытаюсь включить linkedin oauth2 в мое приложение, используя python-social-auth. Однако, когда я перехожу к 127.0.0.1:8000/login/linkedin/ в Chrome, я получаю ошибку «Backend not found». В частности, журналы отображаются следующие ошибки:python-social-auth backend не найден для linkedin oauth2

[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' 
) 

Любая помощь приветствуется.

+2

Если вы используете '' social.backends.linkedin.LinkedinOAuth2''the URL должен быть '' HTTP: // локальный: 8000/Войти/LinkedIn-oauth2/'': '' 'Login ' Для' 'social.backends.linkedin.LinkedinOAuth'' это' 'HTTP: // локальный: 8000/Войти/LinkedIn /' ': ' '' 'Login vero4ka

+0

Я также с той же проблемой. пожалуйста, помогите мне, если у вас есть решение. – Nidhi

ответ

6

Поскольку вы используете OAUTH2, вам необходимо изменить URL-адрес для использования oauth2.

<a href="{% url 'social:begin' backend='linkedin-oauth2' %}">LinkedIn</a> 
+1

Здесь [список бэкэндов] (http://psa.matiasaguirre.net/docs/backends/), несколько примеров [django apps здесь] (http: // psa.matiasaguirre.net/docs/configuration/django.html#authentication-backends), но есть ли где-то полный список названий бэкэндов и URL-адресов или способ их решения? – jozxyqk

+1

Нет, вы можете заглянуть внутрь каждого бэкэнда на https://github.com/omab/python-social-auth/blob/master/social/backends/ для значения «name» – inoks

+1

Спасибо, я нашел документацию действительно здесь нет. – antonagestam

Смежные вопросы