Django AJAX:CSRF验证失败表示缺少csrf令牌

时间:2015-01-27 14:54:09

标签: javascript jquery python ajax django

所以我试图从django webserver中检索json序列化数据,并且我一直收到错误403说csrf验证由于令牌丢失或不正确而失败。

这是我的剧本:

$(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);
                }
            });
        }
    });
});

所以我在数据中包含了csrfmiddlewaretoken字段。我在这里做错了什么?

顺便说一句,这个脚本在模板中,所以我可以使用块标记。

谢谢!

1 个答案:

答案 0 :(得分:0)

改变这个:

csrfmiddlewaretoken: '{{ csrf_token }}'},

"csrfmiddlewaretoken": $("input[name=csrfmiddlewaretoken]").val()
相关问题