一切都在我的头衔中。我想获取当前用户信息,因为我需要在我的视图中根据用户的权限显示操作(删除/编辑)。
我使用Django的基本身份验证(/ login / logout),我没有改变任何东西。有没有办法监听此登录/注销操作并在Angular上下文中检索此信息?
角度很新,我正在寻找一些可以帮助我朝一个或另一个方向前进的信息。
实际上,我没有用于经过身份验证的用户的REST API。
我找到了一些有趣的文章Best place/way to store 'global' data such as 'current logged in user' / How do I store a current user context in Angular?但是现在我说我没有AuthService只是Django的基本登录/注销。
我使用Django Rest框架对我的项目进行了一些操作(比如我的一些模型的post / delete / read / update),并且它可以与angularjs一起使用。但我对Django提供的基本身份验证感到满意,所以我不想重写它。但我不知道如何倾听,如果可能的话。
我知道这是一个广泛的问题,现在我没有代码可以显示,因为经过几个小时的研究,我不知道我需要从哪里开始。 如果它是广泛的我将删除它。
谢谢,
答案 0 :(得分:3)
好的,你可以做那样的事情
示例(someUrl是view.py中函数的url): 在角度控制器中添加$ http
$http({method: 'POST', url: '/someUrl'}).
success(function(data){
//process aswer
});
在djnago view.py中:
from django.shortcuts import HttpResponse
import json
def check_login(request):
if request.user.is_authenticated():
return HttpResponse(json.dumps({'result': {'logged': True}, 'user': request.user.username}),
content_type="application/json")
else:
return HttpResponse(json.dumps({'result': {'logged': False}}),
content_type="application/json")