Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
由于csrf,axios发送到django失败_Django_Reactjs_Axios - Fatal编程技术网

由于csrf,axios发送到django失败

由于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

我正在使用React+Django,并试图使用axios发出post请求,但由于csrf,该请求失败。我已经尝试了所有在互联网上发布的关于类似问题的答案,但没有一个是因为某种奇怪的原因而起作用的

//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