zoukankan      html  css  js  c++  java
  • 如何拓展jwt返回的数据

    默认的返回值仅有token,我们还需在返回值中增加username和id,方便在客户端页面中显示当前登陆用户

    通过修改该视图的返回值可以完成我们的需求。

    在user/utils.py中,创建

    def jwt_response_payload_handler(token, user=None, request=None):
        """
        拓展jwt返回的数据
        :param token: jwt token字符串
        :param user: 当前登录对象 model类模型对象
        :param request: rest_framwork的request对象
        :return:
        """
        自定义jwt认证成功返回数据
        """
        return {
            'token': token,
            'id': user.id,
            'username': user.username
        }
    

    同时还需要在settings.py文件中配置,不然jwt无法找到并使用我们自定义的返回数据

    # JWT
    JWT_AUTH = {
        'JWT_EXPIRATION_DELTA': datetime.timedelta(days=1),
        # 使用我们自定义的函数返回除了token以外的其它数据
        'JWT_RESPONSE_PAYLOAD_HANDLER': 'users.utils.jwt_response_payload_handler',
    }
    

    文档解释

    -------------------------------------------

    个性签名:代码过万,键盘敲烂!!!

    如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!

  • 相关阅读:
    c++好习惯
    mysql:表
    负载均衡
    KBEngine:架构
    skynet的一些运维数据
    Linux学习—LVM快照功能
    跳跃表
    SQL --Chater03 聚合与排序
    SQL --Chapter02 查询基础
    SQL---Chapter01 数据库和SQL
  • 原文地址:https://www.cnblogs.com/weiweivip666/p/13690103.html
Copyright © 2011-2022 走看看