Django REST Framework и python-social-auth для регистрации / входа пользователя
Я должен реализовать некоторые REST API для мобильного приложения.
Я хотел бы использовать Django REST Framework.
Пользователь (мобильная сторона) может зарегистрировать аккаунт только через Facebook, я бы использовал python-social-auth для этой регистрации / входа в систему.
Я новичок в этом, поэтому я видел много учебника / документации / пример об этом.
Я нашел только полный учебник о Django + python_social_auth, но я бы точно знал, как лучше всего регистрировать / регистрировать пользователя с помощью REST-api.
Где я могу найти полный пример?
В моем простом тесте у меня также есть проблема: Когда я пытаюсь использовать этот пример:
@psa('social:complete')
def register_by_access_token(request, backend):
# This view expects an access_token GET parameter, if it's needed,
# request.backend and request.strategy will be loaded with the current
# backend and strategy.
token = request.GET.get('access_token')
user = request.backend.do_auth(request.GET.get('access_token'))
if user:
login(request, user)
return 'OK'
else:
return 'ERROR'
Я получаю эту ошибку:
u'social 'не является зарегистрированным пространством имен
Я пытался также добавить это SOCIAL_AUTH_URL_NAMESPACE = 'myApp'
в моих настройках но это не решит проблему.
2 ответа
Если еще не слишком поздно, почему бы не использовать https://github.com/pennersr/django-allauth и https://github.com/Tivix/django-rest-auth которые предназначены для совместной работы и упрощения API на основе) логин / выход из системы / сброс пароля токена / сброс пароля из токена и т. д.
Я знаю, что пользователь уже выбрал ответ, но так как этот ответ направляет нас в другую библиотеку, вот мой ответ, если кому-то он понадобится позже:
"social" - это пространство имен, которое вы должны дать URL-адресам, предоставленным python-social-auth. Вы должны включить следующую строку в список urlpatterns вашего проекта urls.py:
urlpatterns = [
url(r'^social/', include('social.apps.django_app.urls', namespace="social")
# All other remaining urls here.
]