「Django」rest_framework学习系列-用户登录

用户POST登录-->后台验证用户名密码-->验证正确返回TOKEN-->验证错误返回错误信息

class UserAPI(APIView):
#用户登录类
def post(self,request,*args,**kwargs):
ret = {'code': 200, 'msg': None}
try:
#取前台数据
user = request._request.POST.get('username')
pwd = request._request.POST.get('password')
#验证数据
obj = models.UserInfo.objects.filter(username=user,password=pwd).first()
if not obj:
ret['code']= 201
ret['msg'] = '用户名或密码错误'
#为登录用户创建TOKEN
token = md5(user)
#存在就更新,不存在就创建,token表user对应的是userinfo表,这里user=obj
models.UserToken.objects.update_or_create(user=obj,defaults={'token':token})
ret['token'] = token
except Exception as e:
ret['code'] = 1001
ret['msg'] = '请求异常'
return JsonResponse(ret)

def md5(user):
#MD5生成
import hashlib,time
ctime = str(time.time())
m = hashlib.md5(bytes(user,encoding='utf-8'))
m.update(bytes(ctime,encoding='utf-8'))
return m.hexdigest()

猜你喜欢

转载自www.cnblogs.com/wrxblog/p/10400094.html