原理
1.生成一个token串放在cookies里面,
2.把上面那个token放在表单里面,
3.表单回传之后,对比cookies里面的这个token和post里面的token是否相等,不相等就返回错误,
4.为什么可以防御csrf呢,因为cookies是不会被第三方获取的。
下面这段就是一个验证通过示例:
$this ->security->csrf_verify(); $_POST[$this ->security->get_csrf_token_name()]= $this ->security->get_csrf_hash(); $_SERVER['REQUEST_METHOD']='POST'; $this ->security->csrf_verify();下面这段就是一个验证不通过示例:
$this ->security->csrf_verify(); //$_POST[$this ->security->get_csrf_token_name()]= $this ->security->get_csrf_hash(); $_SERVER['REQUEST_METHOD']='POST'; $this ->security->csrf_verify();