ホームページ  >  記事  >  PHPフレームワーク  >  yii2 提出したデータが認証できない場合の解決方法

yii2 提出したデータが認証できない場合の解決方法

angryTom
angryTomオリジナル
2019-11-06 16:01:217703ブラウズ

yii2 提出したデータが認証できない場合の解決方法

yii2 送信したデータを検証できません。問題を解決するにはどうすればよいですか?

yii では、次のようになります。 「データを検証できません。これは、yii に csrf 検証があるためです。

csrf 検証をオフにする

a)

public $enableCsrfValidation = false;
を追加します」コントローラー

b) フォーム

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

に隠しフィールドを追加します。ただし、上級バージョンでは、フロントエンドとバックエンドが存在します。つまり、名前は必ずしも _csrf である必要はなく、_csrf である可能性もあります。 _csrf-backend または _csrf-frontend など。

_csrf のフィールド名は現在のページと一致している必要があります

c) ajax 送信

axios ajax ライブラリを使用していますが、すべて同じです

axios({
    url: url,
    headers:{
        &#39;<?php echo \yii\web\Request::CSRF_HEADER; ?>&#39; : &#39;<?php echo Yii::$app -> request -> csrfToken; ?>&#39; // _csrf验证
    },
    data: postData,
}).then(response => {
    // 请求成功 回调
}).catch(error => {
    // 请求失败 回调
})

推奨: 「YII チュートリアル

以上がyii2 提出したデータが認証できない場合の解決方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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