Django 使用邮箱登录账号
作者:
M4LLKN0W
,
2021-12-01 21:23:14
,
所有人可见
,
阅读 484
前端(axios发送POST请求)
this.axios({
headers: {"Content-type": "application/x-www-form-urlencoded; charset=UTF-8"},
url: "...",
method: 'POST',
data: {
email: email,
password: password,
}
}).then(resp => {
...
}).catch(err => {
...
});
后端(Django接收请求)
# ../views.py
from django.http import JsonResponse
from django.contrib.auth.models import User
from django.contrib.auth import authenticate, login
import json
def get(request):
data = request.body
data = json.loads(str(data, 'utf-8')) # 处理request数据转换成json
email = data.get('email')
password = data.get('password')
# 用户名替换邮箱
username = User.objects.get(email=email)
user = authenticate(username=username, password=password)
if user is None:
return JsonResponse({
'result': "fail",
'message': "您输入的密码不正确"
})
login(request, user)
return JsonResponse({
'result': 'success',
'message': '登录成功'
})