类别:YII / 日期:2019-12-02 / 浏览:196 / 评论:0
yii2您提交的数据没法被考证怎样处理
在 yii 中,经常会遇到 您提交的数据没法被考证 这类状况,这是由于 yii 有一个 csrf 考证,
封闭csrf考证
a)在控制器中增加
public $enableCsrfValidation = false;
b)在form表单中增加隐蔽域
<input name="_csrf" type="hidden" id="_csrf" value="<?= Yii::$app -> request -> csrfToken ?>">
不过在高等版本中会有前台背景之分,也就是说name并不肯定就是 _csrf,有多是 _csrf-backend 或许 _csrf-frontend 等等。
_csrf 的字段名肯定要与当前页面一致
c)ajax提交
我用的是axios ajax库,实在都迥然不同
axios({ url: url, headers:{ '<?php echo \yii\web\Request::CSRF_HEADER; ?>' : '<?php echo Yii::$app -> request -> csrfToken; ?>' // _csrf考证 }, data: postData, }).then(response => { // 要求胜利 回调 }).catch(error => { // 要求失利 回调 })
引荐:《YII教程》
以上就是yii2您提交的数据没法被考证怎样处理的细致内容,更多请关注ki4网别的相干文章!
版权声明 : 本文未使用任何知识共享协议授权,您可以任何形式自由转载或使用。