2017-08-01 78 views
0

我有一个项目与AngularJS,JWT和Django作为后端框架。 JWT用户认证正常。使用django和AngularJS登录需要装饰者与JWT

同时我想

  • 发送$ http.get装饰有
  • MyView的在Django( '/ MyView的/'),从我的角度服务login_required

经过研究,我明白它不应该工作,因为request.session没有设置。

所以问题是我怎么才能允许在这个视图中获得请求,只有来自经过验证的用户?

我有想法在django中创建自定义装饰器,它将检查将从我的角度服务的获取/发布请求中发送的令牌,但我怀疑它会起作用。

回答

0

我找到了解决方案。我认为其余的框架权限类也可以作为视图的装饰器。

from rest_framework.decorators import api_view, permission_classes 
from rest_framework.permissions import IsAuthenticated 

@api_view(['GET']) 
@permission_classes((IsAuthenticated,)) 
def example_view(request, format=None): 

http://www.django-rest-framework.org/api-guide/permissions/