django对layui中csrf_token处理方式

由于layui官方是没有csrf_token处理机制,所以,在使用layui中post请求,请不要按layui官方提供的两种方法进行设置

官方设置如下:

table.render({
  elem: '#demp'
  ,url: '/ceshi/'
  ,method:'post'
  ,headers: {token: 'sasasas'}
  }
  //,…… //其他参数
});  
或者
table.render({
  elem: '#demp'
  ,url: '/ceshi/'
  ,method:'post'
  ,where: {token: 'sasasas', id: 123}  
  }
  //,…… //其他参数
}); 

 注意:按以上设置是永远都用不了

需要把参数改为django机制的csrfmiddlewaretoken机制,并且需要在静态的html中插入{% csrf_token %}

首先在js中获取
var token_value = $('[name="csrfmiddlewaretoken"]').val();
table.render({
  elem: '#demp'
  ,url: '/ceshi/'
  ,method:'post'
  ,headers: {csrfmiddlewaretoken: token_value}
  }
  //,…… //其他参数
});  
或者
table.render({
  elem: '#demp'
  ,url: '/ceshi/'
  ,method:'post'
  ,where: {csrfmiddlewaretoken: token_value, id: 123}  
  }
  //,…… //其他参数
}); 

 

猜你喜欢

转载自www.cnblogs.com/weilaibuxiangshuo/p/10981749.html