【问题标题】:User current authentication status check endpoint with django and django rest framework使用 django 和 django rest 框架的用户当前身份验证状态检查端点
【发布时间】:2016-04-07 14:23:28
【问题描述】:

如何在django-rest-framework 中创建一个端点,以方便检查给定用户当前是否已登录?

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

【问题讨论】:

  • 你希望我们写多少这段代码?这是一个非常开放的问题 - 您需要一个至少具有这两个给定字段的序列化程序,然后为此添加一个 django rest get 端点。您在哪个部分遇到了问题?

标签: django authentication django-rest-framework


【解决方案1】:

你可以试试这个例子:

型号

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)

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

【讨论】:

    猜你喜欢
    • 2021-06-05
    • 2018-07-30
    • 1970-01-01
    • 2018-02-12
    • 2017-01-17
    • 2013-06-29
    • 2017-09-26
    • 2017-11-02
    • 1970-01-01
    相关资源
    最近更新 更多