示例#1
0
def logout(req):
    #捕获异常
    logger = logging.getLogger('mysiteApp.views')
    try:
        #将json数据转化为python数据格式
        data = simplejson.loads(req.body)
        #获取用户令牌
        customerToken = data['token']
        token = Token()
        #依据用户令牌从数据库获取token
        token = Token.objects.get(token=customerToken)
        token.delete()
        result = {'successful': True, 'error': {'id': '', 'message': ''}}
    except Exception as e:
        logger.error(e.args)
        result = {
            'successful': False,
            'error': {
                'id': '1024',
                'message': e.args
            }
        }
    finally:
        logger.disabled = True
        return HttpResponse(simplejson.dumps(result),
                            content_type="application/json")
示例#2
0
def login(req):
    #获取日志
    logger = logging.getLogger('mysiteApp.views')
    try:
        #将json数据转化为python数据格式
        data = simplejson.loads(req.body)
        #将提交的用户名保存在name变量中
        name = data['user']['name']
        #将提交的用户密码保存在password变量中
        password = data['user']['password']

        #登录名与密码出现错误
        customerUser = User()
        #根据用户名获取密码
        customerUser = User.objects.get(name=name)
        #判断密码是否正确
        if (password == customerUser.password):
            #密码正确则获取Token
            token = Token()
            token = Token.objects.filter(user=customerUser)
            #首次登陆token为空则删除
            if (len(token) != 0):
                token.delete()
        else:
            #若密码不符则抛出异常
            raise myError('登录名与密码出现错误!')
        #生成随机字符串
        customerToken = ''.join(
            random.sample(string.ascii_letters + string.digits, 30))
        #将信息写入token对象
        token = Token()
        token.token = customerToken
        token.user = customerUser
        token.expire = '-1'
        #将Token对象写入数据库
        token.save()
        #构建一个表示成功的dict,data中的token字段为生成的随机令牌
        result = {
            'data': {
                'token': customerToken,
                #?????
                'expire': -1
            },
            'successful': True,
            'error': {
                'id': '',
                'message': ''
            }
        }
    #捕获异常
    except myError as e:
        logger.error(e.value)
        #构建一个表示失败的dict
        result = {
            'successful': False,
            'error': {
                'id': '1',
                'message': e.value
            }
        }
    except Exception as e:
        logger.error(e.args)
        #构建一个表示失败的dict
        result = {
            'successful': False,
            'error': {
                'id': '1024',
                'message': e.args
            }
        }

    finally:
        logger.disabled = True
        #将表示成功的dict以json返回到前段
        return HttpResponse(simplejson.dumps(result),
                            content_type="application/json")