所以我试图从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字段。我在这里做错了什么?
顺便说一句,这个脚本在模板中,所以我可以使用块标记。
谢谢!
答案 0 :(得分:0)
改变这个:
csrfmiddlewaretoken: '{{ csrf_token }}'},
到
"csrfmiddlewaretoken": $("input[name=csrfmiddlewaretoken]").val()