首頁 > php框架 > YII > yii框架怎麼去掉csrf

yii框架怎麼去掉csrf

藏色散人
發布: 2020-07-18 17:18:11
原創
2946 人瀏覽過

yii框架去掉csrf的方法:1、透過「init」方法關閉csrf;2、在form表單中加入隱藏域;3、在AJAX中加入「_csrf」欄位。

yii框架怎麼去掉csrf

YII 關閉csrf的方法

第一個解決方法是關閉Csrf

public function init(){
    $this->enableCsrfValidation = false;
}
登入後複製

第二個解決方法是在form表單中加入隱藏域

<input name="_csrf" type="hidden" id="_csrf" value="<?= Yii::$app->request->csrfToken ?>">
登入後複製

第三種解決方法是在AJAX中加入_csrf欄位

var csrfToken = $(&#39;meta[name="csrf-token"]&#39;).attr("content");
$.ajax({
  type: &#39;POST&#39;,
  url: url,
  data: {_csrf:csrfToken},
  success: success,
  dataType: dataType
});
登入後複製

備註:如果你的頁面沒有form的話, ajax的post提交是沒問題的,用ajax的post提交會自動產生_csrf

如果頁面有form 尤其是有file的話ajax的post是不可以的,必須用get。

推薦:《yii教學

以上是yii框架怎麼去掉csrf的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板