简体   繁体   English

Django AJAX:CSRF验证失败,提示缺少CSRF令牌

[英]Django AJAX: CSRF Verification failed says csrf token is missing

So I am trying to retreive json serialized data from django webserver, and I am keep getting an error 403 says that the csrf verification failed due to token missing or incorrect. 因此,我尝试从Django Web服务器检索json序列化的数据,并且不断收到错误403,说明由于令牌丢失或不正确,导致csrf验证失败。

Here is my script: 这是我的脚本:

$(document).ready(function(){
    var invsearch = $('[name="invsearch"]')
    invsearch.keyup(function(){
        var ooid = invsearch.val();
        if(ooid.length > 3){
            $.ajax({
                url:'{% url 'ofsomething' %}',
                data:{
                    invoice_id:ooid,
                    csrfmiddlewaretoken: '{{ csrf_token }}'},
                datatype:"json",
                type:'POST',
                success: function(json){
                    var orders = JSON.parse(json);
                    console.log(orders.length);
                },
                error: function(xhr, errmsg, err){
                    console.log(xhr.status + ': ' + xhr.responseText);
                }
            });
        }
    });
});

So I included csrfmiddlewaretoken field in data. 因此,我在数据中包含了csrfmiddlewaretoken字段。 What did I do wrong here? 我在这里做错了什么?

By the way, this script is inside the template so I could use the block tag. 顺便说一句,该脚本位于模板内部,因此我可以使用block标记。

Thanks! 谢谢!

Change this: 更改此:

csrfmiddlewaretoken: '{{ csrf_token }}'},

to

"csrfmiddlewaretoken": $("input[name=csrfmiddlewaretoken]").val()

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM