由于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} } //,…… //其他参数 });
原文:https://www.cnblogs.com/weilaibuxiangshuo/p/10981749.html