您的位置:首页 > 编程语言 > Python开发

django 使用post方法出现403错误的解决办法

2017-11-07 10:59 393 查看
当采用客户端象django的服务器提交post请求时。会得到403,权限异常。因为django针对提交的请教,有校验。所以会如此。

解决办法:

导入模块:from django.views.decorators.csrf import csrf_exempt

在接收post请求的函数前面添加修饰器:@csrf_exempt

 //用户必须登陆这个getCookie才会起作用 


function getCookie(name) {
var cookieValue = null;
if (document.cookie && document.cookie !== '') {
var cookies = document.cookie.split(';');
for (var i = 0; i < cookies.length; i++) {
var cookie = jQuery.trim(cookies[i]);
// Does this cookie string begin with the name we want?
if (cookie.substring(0, name.length + 1) === (name + '=')) {
cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
break;
}
}
}
return cookieValue;
}


//用户必须登陆这个getCookie才会起作用
var csrftoken = getCookie('csrftoken');
$.ajax({
cache: false,
type: "POST",
url: "/showtable/",
traditional:true,  //加上此项可以传数组
dataType:'json',
async: true,
data:{'l1_first':l1_first},
success: function(data) {
console.log(data);

$('#show_tree_table').bootstrapTable('destroy');
//显示表头 并且导入数据
show_list_table(data.table_title_list,data.new_project_json);
$('body').mLoading("hide");
totalpage = data.totalpage;
console.log(totalpage);

//进行分页
$("#pagination2").pagination({
currentPage: 1,
totalPage: Math.ceil(totalpage / 20),
callback: function(current) {
PageNation(current);
}

})

},
beforeSend: function(xhr, settings) {
xhr.setRequestHeader("X-CSRFToken", csrftoken);
}

});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐