![](/img/trans.png)
[英]JWT auth using python-social-auth and django-rest-framework
[英]Django REST Framework and python-social-auth for registration/login user
我必須為移動應用程序實現一些REST api。
我想使用Django REST框架。
用戶(移動端)只能使用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'
,但它無法解決問題。
如果還為時不晚,那么為什么不使用https://github.com/pennersr/django-allauth和https://github.com/Tivix/django-rest-auth ,它們可以協同工作並簡化基於API的操作(社交)登錄/注銷/密碼重置令牌/密碼重置從令牌等流程。
我知道用戶已經選擇了答案,但由於答案將我們引導到另一個庫,這是我的答案,以防有人稍后需要它:
“social”是您必須為python-social-auth提供的URL提供的命名空間。 您必須在項目的urls.py的urlpatterns列表中包含以下行:
urlpatterns = [
url(r'^social/', include('social.apps.django_app.urls', namespace="social")
# All other remaining urls here.
]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.