Beispiel #1
0
    def get(self, request):

        '''
        1、接受前端传递过来的uuid
        2、判断uuid是否获取到
        3、通过调用captcha来生产图片验证码(图片二进制和图片内容)
        4、将图片内容保存到redis中
            uuid作为key,图片内容作为value,同时还需要设置时效
        5、返回图片二进制
        :param request:
        :return:
        '''
        # 1、接受前端传递过来的uuid
        uuid = request.GET.get('uuid')
        # 2、判断uuid是否获取到
        if uuid is None:
            return HttpResponseBadRequest('没有传递uuid')
        # 3、通过调用captcha来生成图片验证码(图片二进制和图片内容)
        text, image = captcha.generate_captcha()
        # 4、将图片内容保存到redis中的默认库
        redis_conn = get_redis_connection('default')
        # uuid作为key,图片内容作为value,同时还需要设置时效
        # key 设置为uuid
        # seconds 过期秒数, 300秒5分钟过期时间
        # value text
        redis_conn.setex('img:%s' % uuid, 300, text)
        # 5、返回图片二进制
        return HttpResponse(image, content_type='image/jpeg')
Beispiel #2
0
 def get(self, request, image_code_id):
     # generate:生成
     text, image = captcha.generate_captcha()
     redis_conn = get_redis_connection('code')
     redis_conn.setex('img_%s' % image_code_id, 60, text)
     # 可以设置返回数据的不同的格式
     return HttpResponse(image, content_type='image/jpeg')
Beispiel #3
0
 def get(self, request):
     """
     1. Receive the uuid passed by the front end
     2. Determine whether uuid is obtained
     3. Generate image verification code (image binary and image content) by calling captcha
     4. Save the image content to redis
         uuid is the key, the image content is the value, and we also need to set an actual effect
     5. Return image binary
     :param request:
     :return:
     """
     # 1. Receive the uuid passed by the front end
     uuid = request.GET.get('uuid')
     # 2. Determine whether uuid is obtained
     if uuid is None:
         return HttpResponseBadRequest('No uuid is passed.')
     # 3. Generate image verification code (image binary and image content) by calling captcha
     text, image = captcha.generate_captcha()
     # 4. Save the image content to redis
     redis_conn = get_redis_connection('default')
     #key -> 'code'
     #seconds -> Expired seconds (300s)
     #value -> text
     redis_conn.set(name='code', value=text, ex=120)
     # 5. Return image binary
     return HttpResponse(image, content_type='image/jpeg')
Beispiel #4
0
    def get(self, request, uuid):
        # ① 获取前端提交的uuid
        # ② 生成图片验证码 (图片二进制,图片中的内容)
        from libs.captcha.captcha import captcha
        # text 就是生成的图片验证码的内容,例如 abcd
        # image 就是 图片二进制
        text, image = captcha.generate_captcha()
        # ③ 将uuid和图片中的内容保存到redis中
        #3.1 连接redis
        from django_redis import get_redis_connection
        redis_conn = get_redis_connection('code')
        #setex key seconds value
        # redis_conn.setex(key,seconds,value)
        # redis_conn.setex(uuid,120,text)

        # key 想加一个前缀
        redis_conn.setex('img_%s' % uuid, 120, text)

        # ④ 返回图片
        # return HttpResponse(image)
        # content_type
        # MIME类型
        # 大类/小类
        # application/json
        # text/html
        # image/jpeg
        return HttpResponse(image, content_type='image/jpeg')
Beispiel #5
0
    def get(self,request,uuid):

        text,image = captcha.generate_captcha()
        redis_conn = get_redis_connection('code')
        redis_conn.setex('img_%s'%uuid,120,text)

        return HttpResponse(image,content_type='image/jpeg')
Beispiel #6
0
    def get(self,request, uuid):
        text,image = captcha.generate_captcha()
        redis_client = get_redis_connection('verify_image_code')

        redis_client.setex(uuid, 300, text)

        return http.HttpResponse(image,content_type='image/jpeg')
Beispiel #7
0
 def get(self, request, uuid):
     from libs.captcha.captcha import captcha
     text, image = captcha.generate_captcha()
     from django_redis import get_redis_connection
     redis_conn = get_redis_connection('code')
     redis_conn.setex('img_%s' % uuid, 120, text)
     return HttpResponse(image, content_type='image/jpeg')
Beispiel #8
0
 def get(self, request):
     """
     1.接收前端传递过来的uuid
     2.判断uuid是否获取到
     3.通过调用captcha 来生成图片验证码(图片二进制和图片内容)
     4.将 图片内容保存到redis中
         uuid作为一个key, 图片内容作为一个value 同时我们还需要设置一个实效
     5.返回图片二进制
     :param request:
     :return:
     """
     # 1.接收前端传递过来的uuid
     uuid = request.GET.get('uuid')
     # 2.判断uuid是否获取到
     if uuid is None:
         return HttpResponseBadRequest('没有传递uuid')
     # 3.通过调用captcha 来生成图片验证码(图片二进制和图片内容)
     text, image = captcha.generate_captcha()
     # 4.将 图片内容保存到redis中
     #     uuid作为一个key, 图片内容作为一个value 同时我们还需要设置一个实效
     redis_conn = get_redis_connection('default')
     # key 设置为 uuid
     # seconds  过期秒数  300秒 5分钟过期时间
     # value  text
     redis_conn.setex('img:%s' % uuid, 300, text)
     # 5.返回图片二进制
     return HttpResponse(image, content_type='image/jpeg')
Beispiel #9
0
 def get(self, request, uuid):
     # 1. 生成验证码  验证码文本 及 验证码图片二进制流
     text, image = captcha.generate_captcha()
     # 2. 连接数据库
     image_redis_clien = get_redis_connection('verify_image_code')
     # 3. 将验证码文本保存到 redis 数据库
     image_redis_clien.setex(uuid, 300, text)
     return http.HttpResponse(image, content_type='image/jpeg')
Beispiel #10
0
    def get(self, requset, uuid):
        text, image = captcha.generate_captcha()
        # 链接redis
        redis_conn = get_redis_connection('code')

        # 保存在redis
        redis_conn.setex(uuid, 300, text)
        return http.HttpResponse(image, content_type='image/jpeg')
Beispiel #11
0
    def get(self, image_code_id):
        text, image = captcha.generate_captcha()
        print(text)
        redis_conn = get_redis_connection(1)
        redis_conn.setex("img_%s" % image_code_id, 60, text)

        response = Response(image, mimetype="image/jpeg")
        return response
Beispiel #12
0
 def get(self,request,image_code_id):
     # 生成图片验证码
     text ,image = captcha.generate_captcha()
     # 保存图片验证码的数据
     redis_conn = get_redis_connection('code')
     redis_conn.setex('img_%s'%image_code_id,constant.IMAGE_CODE_EXPIRE_TIME,text)
     # 返回响应
     return HttpResponse(image,content_type='image/jpeg')
Beispiel #13
0
 def get(self):
     # 1.生成图形验证码
     text, image = captcha.generate_captcha()
     key = 'image_code'
     redis_client_verify.setex(key, 300, text)
     response = make_response(image)
     response.headers['Content-Type'] = "image/jpg"
     # 4.返回图片
     return response
Beispiel #14
0
    def get(self,request,image_code_id):

        #创建图片和验证码 
        text,image = captcha.generate_captcha()
        #通过redis保存验证码
        redis_conn = get_redis_connection('code')
        redis_conn.setex('img_%s'%image_code_id,600,text)
        #将图片返回  注意 图片是 二进制的
        return HttpResponse(image,content_type='image/jpeg')
Beispiel #15
0
 def get(self, request):
     uuid = request.GET.get('uuid')
     if uuid is None:
         return HttpResponseBadRequest('UUID is None')
     text, image = captcha.generate_captcha()
     # save image code to redis for authentication
     redis_conn = get_redis_connection('default')
     redis_conn.setex('img:' + str(uuid), 300, text)
     return HttpResponse(image, content_type='image/jpeg')
Beispiel #16
0
 def get(self, request, image_code_id):
     # 创建图片和验证码
     text, image = captcha.generate_captcha()
     # 通过redis进行保存验证码
     redis_conn = get_redis_connection('code')
     redis_conn.setex('img_%s' % image_code_id, 60, text)
     # 将图片返回
     # 注意,图片是二进制,我们通过HttpResponse返回
     return HttpResponse(image, content_type='image/jpeg')
    def get(self, request):

        uuid = request.GET.get('uuid')
        if uuid is None:
            return HttpResponseBadRequest('没有传递uuid')
        text, image = captcha.generate_captcha()
        redis_conn = get_redis_connection('default')
        redis_conn.setex('img:%s' % uuid, 300, text)
        return HttpResponse(image, content_type='image/jpeg')
Beispiel #18
0
    def get(self, request):
        image_code_id = request.GET.get("image_code_id")

        text, image = captcha.generate_captcha()
        redis_conn = get_redis_connection("verify_codes")
        redis_conn.setex("img_%s" % image_code_id,
                         constans.IMAGE_CODE_REDIS_EXPIRES, text)
        print(text)
        return HttpResponse(image, content_type="images/jpg")
Beispiel #19
0
    def get(self, request, uuid):
        # 生成图片验证码
        text, image = captcha.generate_captcha()
        # 保存图片验证码
        # 链接redis数据库
        redis_conn = get_redis_connection('code')
        redis_conn.setex('img_%s' % uuid, 120, text)

        # 响应返回图片验证码
        return http.HttpResponse(image, content_type='image/jpeg')
Beispiel #20
0
 def get(self, request, image_code_id):
     # 1.接收uuid
     # 2.生成验证码
     text, image = captcha.generate_captcha()
     print(text)
     # 3.将验证码保存在redis中
     redis_conn = get_redis_connection('code')
     redis_conn.setex('img' + image_code_id, 300, text)
     # 4.返回验证码
     return HttpResponse(image, content_type='image/jpeg')
Beispiel #21
0
 def get(self, request, image_code_id):
     if not image_code_id:
         return Response(status=status.HTTP_406_NOT_ACCEPTABLE)
     code_id, text, image = captcha.generate_captcha()  #获取验证码
     print('image_code:', text)
     #保存uuid_code和image_code_id对应存储到redis中
     redis_conn = get_redis_connection('code')
     redis_conn.setex('img_%s' % image_code_id, 60, text)
     #返回给前段image_text图片
     return HttpResponse(image, content_type='image/jpeg')
Beispiel #22
0
    def get(self, request, image_code_id):
        # 1.创建图片和验证码
        text, image = captcha.generate_captcha()
        # 2.通过redis进行保存验证码  60秒就过期
        redis_conn = get_redis_connection('code')  #就是60秒的意思
        redis_conn.setex('img_%s' % image_code_id, constants.IMAGE_GOOD_EXPIRE,
                         text)
        # 3.把图片返回

        return HttpResponse(image, content_type='image/jpeg')
Beispiel #23
0
    def get(self, request, uuid):

        #1.生成图片验证码和获取图片验证码内容
        text, image = captcha.generate_captcha()
        #2.连接reids
        redis_con = get_redis_connection('code')
        #3.把图片验证码保存到redis中 uuid:xxxx
        redis_con.setex(uuid, 1000, text)

        return HttpResponse(image, content_type='image/jpeg')
Beispiel #24
0
 def get(self, request, image_code_id):
     # 1、接收参数
     # 2、captcha生成图片和图片验证码,把验证码保存到redis中
     text, image = captcha.generate_captcha()
     # redis的链接设置,是根据"code",来找到redis的2号库
     redis_conn = get_redis_connection("code")
     redis_conn.setex("img_%s" % image_code_id,
                      constants.IMAGE_CODE_EXPIRE_TIME, text)
     # 3、返回响应
     return HttpResponse(image, content_type='image/jpeg')
 def get(self, request, uuid):
     # ① 获取前段传来的uuid
     # ② 生成图片验证码(二进制图片, 图片内容)
     from libs.captcha.captcha import captcha
     text, image = captcha.generate_captcha()
     # ③ 连接redis,保存uuid和图片验证码
     from django_redis import get_redis_connection
     redis_conn = get_redis_connection('code')
     redis_conn.setex('img_%s' % uuid, 120, text)
     # ④ 返回图片
     return http.HttpResponse(image, content_type='image/jpeg')
Beispiel #26
0
    def get(self, request):
        cur = request.GET.get('cur')
        pre = request.GET.get('pre')

        text, image = captcha.generate_captcha()

        redis_conn = get_redis_connection('verify_code')

        redis_conn.setex('img_%s' % cur, 300, text)

        return HttpResponse(image, content_type='image/jpg')
Beispiel #27
0
    def get(self,request,image_code_id):

        #  1  生成图片验证码,
        text,image = captcha.generate_captcha()
        # 2     保存 图片验证码的数据
        redis_conn = get_redis_connection('code')
        from . import constant
        redis_conn.setex('img_%s'%image_code_id,constant.IMAGE_CODE_EXPIRE_TIME,text)
        # 3   返回响应
        # return HttpResponse(image,content_type='application/json')
        return HttpResponse(image,content_type='image/jpeg')
Beispiel #28
0
 def get(self, request, image_code_id):
     #1.接受image_code_id,生成图片和验证码
     text, image = captcha.generate_captcha()
     #2.验证码保存到redis中
     #2.1链接redis
     redis_coon = get_redis_connection('code')
     #2.2设置图片
     redis_coon.setex('img_' + image_code_id, 60, text)
     #3返回图片响应
     #注意,图片是二进制,我们通过HttpResponse返回
     return HttpResponse(image, content_type='image/jpeg')
Beispiel #29
0
 def get(self, request, uuid):
     # 1.生成图片验证码
     text, image = captcha.generate_captcha()
     # 2.连接reis
     redis_conn = get_redis_connection('code')
     # 3.将图片验证码保存起来
     # 这里记得增加过期时间,为了增加代码的可读性
     # 将这个时间定义为一个常量,这里直接调用,见名知意
     redis_conn.setex('img_%s' % uuid, image_code_expire_time, text)
     # 4.返回图片验证码
     return http.HttpResponse(image, content_type='image/jpeg')
Beispiel #30
0
    def get(self, request, image_code_id):
        # 1.生成一个图片验证码
        text, image = captcha.generate_captcha()
        # 2.保存图片验证码
        # 链接redis
        redis_conn = get_redis_connection('code')

        redis_conn.setex('img_%s' % image_code_id, 60, text)

        # 返回图片
        return HttpResponse(image, content_type='image/jpeg')