Heim > Artikel > PHP-Framework > In yii2.0 wird csrf darauf hingewiesen, dass die von Ihnen übermittelten Daten nicht überprüft werden können.
In yii kommt es häufig vor, dass „die von Ihnen übermittelten Daten nicht überprüft werden können“. Dies liegt daran, dass yii über eine CSRF-Verifizierung verfügt.
Deaktivieren Sie einfach die CSRF-Überprüfung.
1. Fügen Sie
public $enableCsrfValidation = false;
im Controller hinzu. 2. Fügen Sie ein verstecktes Feld im Formular
<input name="_csrf" type="hidden" id="_csrf" value="<?= Yii::$app -> request -> csrfToken ?>">
hinzu. In der erweiterten Version wird es jedoch ein Front- und ein Backend geben. Das heißt, der Name ist nicht unbedingt _csrf, er kann _csrf-backend oder _csrf-frontend usw. sein. Der Feldname von
_csrf muss mit der aktuellen Seite übereinstimmen.
3. Ajax-Einreichung
Hier wird die Ajax-Bibliothek Axios verwendet
axios({ url: url, headers:{ '<?php echo \yii\web\Request::CSRF_HEADER; ?>' : ' <?php echo Yii::$app -> request -> csrfToken; ?>' // _csrf验证 }, data: postData, }).then(response => { // 请求成功 回调 }).catch(error => { // 请求失败 回调 })
Verwandte Artikel-Tutorial-Empfehlungen: yii-Tutorial
Das obige ist der detaillierte Inhalt vonIn yii2.0 wird csrf darauf hingewiesen, dass die von Ihnen übermittelten Daten nicht überprüft werden können.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!