Example #1
0
    def get(self, request, image_code_id):
        # 创建连接到redis的对象
        redis_conn = get_redis_connection('verify_code')

        if not image_code_id:
            logger.error("参数不足")
            return Response({'message': '微博服务器异常'}, status=status.HTTP_404_NOT_FOUND)
        image_name, real_image_code, image_data = captcha.generate_captcha()
        # 将code_id作为key将验证码图片的真实值保存到redis数据库,并设置有效时长5分钟
        try:
            redis_conn.setex("CODEID_%s" % image_code_id, 300, real_image_code)
            # print(real_image_code)
        except Exception as error:
            logger.info(error)
            return Response({'message': '验证失败'}, status=status.HTTP_400_BAD_REQUEST)
        # 返回验证码图片数据
        resp = HttpResponse(image_data)
        resp._content_type = 'image/jpg'

        return resp
Example #2
0
def response_test(request):
    """构造响应"""

    # # 默认响应头
    # result = '{"name": "sam"}'
    # # 三个参数  content  content_type status
    # return HttpResponse(content=result, content_type="application/json", status=400)

    # 构造自定义响应头
    response = HttpResponse()
    response["name"] = "sam"
    # 设置响应头属性
    response.content = '{"type":"python"}'
    response._content_type = "application/json"
    response.status_code = 400

    # 设置session
    request.session["name"] = "bily"
    request.session["age"] = 20

    return response