用到的知识:
- 跨域
- csrf验证取消
- POST数据的解析
- Model对象的简单应用
引入库
from django.views.decorators.csrf import csrf_exempt
直接记录代码
#登录
@csrf_exempt #关闭csrf验证
def login(request):
data=json.loads(request.body)
user=User.objects.get(email=data['email'])
if user:
if data['password'] != user.password:
return HttpResponse("密码错误")
else:
return HttpResponse("登录成功")
return HttpResponse("存在"+user.password)
else:
return HttpResponse("不存在")
#注册
@csrf_exempt
def register(request):
data=json.loads(request.body)
if (data['email'] == "" and data['password'] == ""):
return HttpResponse("信息有误")
else:
user = User(email=data['email'], password=data['password'])
user.save()
return HttpResponse("ok")
问题记录
- 使用jquery ajax请求失败,crsf说cookies没有设定
- 使用axios成功访问
$.ajax({
type: "post",
url: API_REGISTER,
async: true,
contentType: "application/json",
data: {email:$('#email').val(),password:$('#psd1').val()
},
success: function(result) {
alert("success")
},
error: function(error) {
alert("failed")
}
});
axios 成功
axios.post(API_REGISTER,{
email:$('#email').val(),
password:$('#psd2').val()
}).then(function (response) {
console.log(response.data)
})
网友评论