首页 > 其他分享 >二维码生成

二维码生成

时间:2023-07-21 16:33:06浏览次数:28  
标签:info return get token 生成 二维码 user id

生成二维码

class QRlogin(ViewSet):
    @action(methods=['GET'], detail=False)
    def scan(self, request, *args, **kwargs):
        img = qrcode.make("http://127.0.0.1:8000/api/v1/user/qrlogin/login/?user_id=1")
        img = img.get_image()
        b = BytesIO()
        img.save(b, format='JPEG')
        res = base64.b64encode(b.getvalue())
        # return APIResponse(url='data:image/jpg;base64,'+res)
        return APIResponse(url=res, user_id=1)

扫码登录,将缓存存入redis里面

    @action(methods=['GET'], detail=False)
    def login(self, request, *args, **kwargs):
        user_id = request.GET.get('user_id')
        user = User.objects.get(pk=user_id)
        # 签发token,放到redis
        payload = jwt_payload_handler(user)
        token = jwt_encode_handler(payload)
        user_info = {'username': user.username, 'token': token}
        import time
        time.sleep(5)
        cache.set('user_id_%s' % user_id, user_info)
        return APIResponse()

检查登录

    @action(methods=['GET'], detail=False)
    def check_login(self, request, *args, **kwargs):
        user_id = request.GET.get('user_id')
        user_info = cache.get('user_id_%s' % user_id)
        if user_info:
            cache.set('user_id_%s' % user_id, None)
            return APIResponse(token=user_info.get('token'), username=user_info.get('username'))
        else:
            return APIResponse(code=101, msg='手机端尚未确认登录')

标签:info,return,get,token,生成,二维码,user,id
From: https://www.cnblogs.com/whxx/p/17571795.html

相关文章

  • tp6生成链接内容二维码
    1.composer安装composerrequireendroid/qr-code2.相关类的引用useEndroid\QrCode\Color\Color;useEndroid\QrCode\Encoding\Encoding;useEndroid\QrCode\ErrorCorrectionLevel\ErrorCorrectionLevelLow;useEndroid\QrCode\QrCode;useEndroid\QrCode\L......
  • G2、人脸图像生成(DCGAN)
    ......
  • mysql 生成序号
    MySQL生成序号在数据库管理系统中,我们经常需要为数据表中的每一行记录生成一个唯一的序号。这可以用于标识记录的顺序或者创建唯一的标识符。MySQL提供了多种方法来生成序号,包括使用自增列、使用触发器、使用变量等。本文将介绍其中几种常用的方法,并给出相应的代码示例。使用自增......
  • mysql 生成全表清除sql
    MySQL生成全表清除SQLMySQL是一个非常流行的关系型数据库管理系统,广泛应用于各种Web应用程序和数据驱动的应用程序中。在开发和维护数据库时,有时需要清空表中的所有数据,以便重新开始或进行测试。本篇文章将介绍如何使用MySQL生成全表清除SQL的方法,并提供相应的代码示例。方法一:......
  • 可打开或生成的点云、模型格式
    点云ContextCapture可生成CloudCompare可打开 CloudCompare可保存 模型ContextCapture    ......
  • sam自动生成mask代码解析
    要自动生成mask,请向“SamAutomaticMaskGenerator”类注入SAM模型(需要先初始化SAM模型)importsyssys.path.append("..")fromsegment_anythingimportsam_model_registry,SamAutomaticMaskGenerator,SamPredictorsam_checkpoint="sam_vit_b_01ec64.pth"model_type......
  • Android生成二维码
    引入jar包链接:https://pan.baidu.com/s/15bWmBGHR6InqQG_Hi6Ab7A提取码:1234utilspackagecom.jay.common;importandroid.graphics.Bitmap;importandroid.graphics.Color;importcom.google.zxing.BarcodeFormat;importcom.google.zxing.EncodeHintType;importcom.......
  • 全球生成式AI大竞赛,Llama 2大模型现已可在亚马逊云科技上使用
    一直以来Llama可以说是AI社区内最强大的开源大模型。但因为开源协议问题,一直不可免费商用。7月19日,Meta发布了大家期待已久的免费可商用版本Llama2。一夜之间,大模型格局再次发生巨变。 作为Meta宣布的首批合作伙伴之一,现亚马逊云科技客户可通过AmazonSageMakerJumpStart使用由M......
  • python生成图标
    Python生成图标的步骤作为一名经验丰富的开发者,我很高兴能够教你如何使用Python生成图标。下面是生成图标的整体流程以及每一步需要做的事情。步骤概览步骤描述1安装必要的库2准备数据3创建图表对象4设置图表样式5添加数据到图表6保存图表到文件......
  • python生成混合高斯分布
    Python生成混合高斯分布介绍高斯分布(正态分布)是概率论中最为常见的一种分布,其在自然和社会科学中有广泛应用。而混合高斯分布则是由多个高斯分布组合而成的概率分布,其能够更好地拟合复杂的数据分布。在本文中,我们将介绍如何使用Python生成混合高斯分布,并提供相应的代码示例。混......