1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
COPY
#登录接口
class Login(APIView):
def get(self,request):
#接收参数
username = request.GET.get('username',None)
password = request.GET.get('password',None)
#验证验证码
if code != redis_code:
return Response({'code':403,'message':'验证码错误'})
#如果用户的列表长度大于等于3
if r.llen(username) >= 3:
return Response({'code':403,'message':'你的账号已被锁定'})
#查询用户数据
user = User.objects.filter(username=username).first()
if user:
#比较密码是否一致,如果一致则登录成功
if user.password == make_password(password):
return Response({'code':200,'message':'登陆成功','uid':user.id,'username':user.username})
#不一致则计数加1,返回密码错误
else:
r.lpush(username,1)
r.expire(username,30)
return Response({'code':403,'message':'用户名或密码错误'})
else:
return Response({'code':403,'message':'用户名或密码错误'})