ホームページ  >  記事  >  PHPフレームワーク  >  yii フレームワークで csrf を削除する方法

yii フレームワークで csrf を削除する方法

藏色散人
藏色散人オリジナル
2020-07-18 17:16:352921ブラウズ

Yii フレームワークで csrf を削除する方法: 1. "init" メソッドを使用して csrf をオフにします; 2. フォームに隠しフィールドを追加します; 3. AJAX に "_csrf" フィールドを追加します。

yii フレームワークで csrf を削除する方法

YII csrf をオフにする方法

最初の解決策は、Csrf

public function init(){
    $this->enableCsrfValidation = false;
}
## をオフにすることです。 # 2 番目の解決策は、フォームに隠しフィールドを追加することです

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

3 番目の解決策は、_csrf フィールドを AJAX に追加することです

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

注: ページにフォームがない場合は、 ajax ポスト送信では問題ありません。ajax ポスト送信を使用すると、_csrf

ページにフォーム、特にファイルがある場合、ajax ポストは不可能なので、get を使用する必要があります。

推奨: 「

yii チュートリアル

以上がyii フレームワークで csrf を削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。