首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Backbone.js和Django Rest框架注册和认证

问Backbone.js和Django Rest框架注册和认证
EN

Stack Overflow用户
提问于 2015-01-04 20:59:19
回答 2查看 1.7K关注 0票数 1

我正在为我的前端创建一个使用backbone.js的应用程序,并为我的后端创建django-rest框架。我希望能够注册用户,登录和退出用户,并检查用户是否使用主干登录。

我理解django身份验证是如何工作的,以及drf是如何使用身份验证的,但我不知道如何将它绑定到主干。

谁能给我指明正确的方向?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-01-06 12:28:10

如果您的所有应用程序只能使用用户密码访问,请使用Django的身份验证系统https://docs.djangoproject.com/en/1.7/topics/auth/default/#django.contrib.auth.views.login。让你所有的观点@login_required。

现在,如果您想通过ajax调用登录它们,请创建一个视图,如下所示:

代码语言:javascript
复制
from django.contrib.auth import authenticate
from django.views.decorators.csrf import csrf_exempt

@csrf_exempt
def login_ajax(request):
    data = json.loads(request.body.decode("utf-8"))
    user = authenticate(username=data['user'], password=data['pass'])
    if user:      
        return HttpResponse("OK")
    else:
        return HttpResponse("Error", status=401)

稍后,在模板上的JS上:

代码语言:javascript
复制
$.post( /* url where you mapped the login_ajax view */, { user: "John", pass: "abc123" } )
 .done(function( data ) { alert( "User logged in: " + data );})
 .fail(function( data ) { alert( "User not logged in: " + data );});
票数 1
EN

Stack Overflow用户

发布于 2015-01-04 22:21:41

我将django-rest-auth与AngularJS结合使用。它为您提供了一组REST端点来处理用户注册和身份验证任务,它与django-rest框架和django-allauth完美地集成在一起。

要获取用户信息,您需要调用这个API:

代码语言:javascript
复制
.../rest-auth/user/

默认情况下,响应是:

代码语言:javascript
复制
username
first_name
last_name
email

但是你可以用其他的信息来扩展它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27770301

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档