使用django和AngularJS登录需要装饰者与JWT
问题描述:
我有一个项目与AngularJS,JWT和Django作为后端框架。 JWT用户认证正常。使用django和AngularJS登录需要装饰者与JWT
同时我想
- 发送$ http.get装饰有
- 要MyView的在Django( '/ MyView的/'),从我的角度服务login_required 。
经过研究,我明白它不应该工作,因为request.session没有设置。
所以问题是我怎么才能允许在这个视图中获得请求,只有来自经过验证的用户?
我有想法在django中创建自定义装饰器,它将检查将从我的角度服务的获取/发布请求中发送的令牌,但我怀疑它会起作用。
答
我找到了解决方案。我认为其余的框架权限类也可以作为视图的装饰器。
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):