yii2您提交的數據無法被驗證怎么解決

yii2您提交的數據無法被驗證怎么解決

YII2您提交的數據無法被驗證怎么解決

在 yii 中,經常會碰到 您提交的數據無法被驗證 這種情況,這是因為 yii 有一個 csrf 驗證,

關閉csrf驗證

a)在控制器中添加

public?$enableCsrfValidation?=?false;

b)在form表單中添加隱藏域

<input>?request?-&gt;?csrfToken??&gt;"&gt;

不過在高級版本中會有前臺后臺之分,也就是說name并不一定就是 _csrf,有可能是 _csrf-backend 或者 _csrf-frontend 等等。

_csrf 的字段名一定要與當前頁面一致

c)ajax提交

我用的是axios ajax庫,其實都大同小異

axios({ ????url:?url, ????headers:{ ????????'<?php  echo yiiwebRequest::CSRF_HEADER; ?>'?:?'<?php  echo Yii::$app ->?request?-&gt;?csrfToken;??&gt;'?//?_csrf驗證 ????}, ????data:?postData, }).then(response?=&gt;?{ ????//?請求成功?回調 }).catch(error?=&gt;?{ ????//?請求失敗?回調 })

推薦:《YII教程》?

? 版權聲明
THE END
喜歡就支持一下吧
點贊12 分享