由于csrf,axios发送到django失败
我正在使用React+Django,并试图使用axios发出post请求,但由于csrf,该请求失败。我已经尝试了所有在互联网上发布的关于类似问题的答案,但没有一个是因为某种奇怪的原因而起作用的由于csrf,axios发送到django失败,django,reactjs,axios,Django,Reactjs,Axios,我正在使用React+Django,并试图使用axios发出post请求,但由于csrf,该请求失败。我已经尝试了所有在互联网上发布的关于类似问题的答案,但没有一个是因为某种奇怪的原因而起作用的 //Django View def createUser(request): username = request.POST['username'] email = request.POST['email'] resp = { 'username' : usernam
//Django View
def createUser(request):
username = request.POST['username']
email = request.POST['email']
resp = {
'username' : username,
'email' : email
}
return JsonResponse(resp)
//Axios Post
axios.post('http://localhost:8000/api/createUser/',{
username : 'xyz',
email : 'xyz@gmail.com'
},
{
headers: {
Content-Type': 'application/json',
}
});
尝试添加默认值
axios.defaults.xsrfHeaderName = "X-CSRFTOKEN";
axios.defaults.xsrfCookieName = "csrftoken";
但仍然无法获得csrf。我知道我可以在视图上执行@csrf\u豁免,但我想保留csrf检查。连同X-CSRFToken头,还可以使用
和凭据:true将cookie包括在axios请求中。
你确定它的
X-CSRFTOKEN
而不是X-CSRF-TOKEN
@Advaith我遵循了这个答案,它说的是X-CSRFTOKEN