用户当前身份验证状态检查端点与django和django休息框架

时间:2016-01-04 00:31:00

标签: django authentication django-rest-framework

如何在django-rest-framework中创建一个有助于检查给定用户当前是否已登录的端点?

我们的想法是提供身份验证令牌和用户名,然后获得{"Authenticated": True}{"Authenticated": False"}等响应。

1 个答案:

答案 0 :(得分:0)

您可以尝试使用此示例:

模型

class LoggedUser(models.Model):
    user = models.ForeignKey('YourUserObject', primary_key=True)

    def __unicode__(self):
        return self.user

    def login_user(sender, request, user, **kwargs):
        LoggedUser(user=user).save()

    def logout_user(sender, request, user, **kwargs):
        try:
            u = LoggedUser.objects.get(user=user)
            u.delete()
        except LoggedUser.DoesNotExist:
            pass

    user_logged_in.connect(login_user)
    user_logged_out.connect(logout_user)

在此之后,您可以执行序列化类来检索当前的用户。