浏览数:
429
import hashlib
# md5 加密函数
def md5(pwd):
md5sum = hashlib.md5()
md5sum.update(pwd.encode())
return md5sum.hexdigest()
# 用户注册
def register(request):
if request.method == 'POST':
user = UserMain()
body = str(request.body, encoding="utf-8")
data = eval(body)
user_str = data['user_str']
password = data['password']
nick_name = data['nick_name']
user_name = 'yss' + user_str
user.user_name = user_name
user.phone_number = user_str
user.password = md5(password)
user.nick_name = nick_name
user.save()
response = HttpResponse(json.dumps(success_message))
response = add_header(response)
return response
# 登录验证
def login(request):
# 因为是通过接口POST,数据都在请求体里面
body = str(request.body, encoding="utf-8")
data = eval(body)
user_str = data['user_str']
password = data['password']
u_type = user_type(user_str)
print(u_type)
# 先判断用户是否存在, 如果用户存在再判断密码是否正确·
try:
if u_type == 'phone_number':
obj = UserMain.objects.get(phone_number=user_str)
user_str = obj.user_name
elif u_type == 'email':
obj = UserMain.objects.get(email=user_str)
user_str = obj.user_name
else:
obj = UserMain.objects.get(user_name=user_str)
if md5(password) == obj.password:
# 密码验证通过后生成token
token = create_token(user_str)
user = json.dumps({**model_to_dict(obj), **success_message, **{'token': token}})
response = HttpResponse(user)
response = add_header(response)
return response
else:
response = HttpResponse(json.dumps(auth_fail_message))
response = add_header(response)
return response
except UserMain.DoesNotExist:
response = HttpResponse(json.dumps(auth_fail_message))
response = add_header(response)
return response