解决POST数据时因启用Csrf出现的400错误

时间:2023-03-09 01:47:43
解决POST数据时因启用Csrf出现的400错误

第一种解决办法是关闭Csrf

public function init(){
$this->enableCsrfValidation = false;
}

第二种解决办法是在form表单中加入隐藏域

<input name="_csrf" type="hidden" id="_csrf" value="<?= Yii::$app->request->csrfToken ?>">

第三种解决办法是在AJAX中加入_csrf字段

var csrfToken = $('meta[name="csrf-token"]').attr("content");
$.ajax({
type: 'POST',
url: url,
data: {_csrf:csrfToken},
success: success,
dataType: dataType
});