Yii 2.0 ajax 请求 CSRF 校验失败
最近在一次Yii 2.0 框架开发中遇到了ajax请求 csrf校验失败的问题,得到的错误提示为
Bad Request (#400)
您提交的数据无法验证.
经过测试发现试csrf cookies没有正确设置,在设置了Yii::$app->request->csrfParam 和 Yii::$app->request->csrfToken 后依旧报错。CSRF参数设置方法
经过一系列debug发现是controller里面的渲染代码格式错误导致,详情如下
//正确
return $this->render()
//错误
echo $this->render()
换回正确代码后,csrf校验恢复正常,真是小问题,忙死人不偿命啊。
留言