Tp6 预防CSRF攻击(跨站请求伪造)
在前端代码中添加:
<div class="layui-form-item">
<label class="layui-form-label" style="width: 200px;"></label>
<div>{:token_field()}</div>
<div class="layui-input-inline">
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="demo1">立即提交</button>
</div>
</div>
添加隐藏域 :<div>{:token_field()}</div>
然后通过ajax传递到后台
let goods_data = [
...data.field,
categroy_id:$('#goods_cate').attr('data_ids'),
__token__:$("input[name='__token__']").value(),
];
添加:
__token__:$("input[name='__token__']").value(),
控制器接收数据并验证数据:
$check=$this->request->checkToken('__token__');
if($check==false){
returnshow(config("status.error"),"请求不合法");
}
config("status.error")实在配置文件中配置
文件位置:tp/config/status.php
return [ 'success'=>200, 'error'=>0, 'not_login'=>-1, ];