1

ajax ポストでも _csrf トークンをフォームで送信していますが、それでも #400 yii2 でのデータ送信を検証できません。この問題を回避するために次のコードを使用したくありません。

public function beforeAction($action)
{
    $this->enableCsrfValidation = false;
    eturn parent::beforeAction($action);
}

このコードを適用するとセキュリティが侵害されるため、これは恒久的な解決策ではありません。これが私の js コードです。

 $(document.body).on('submit','form#send-resource-form',function(e) { 
    var form = $(this); 
    $.ajax({ url: form.attr('action'), 
      type: 'post', 
      data: form.serialize(), 
      dataType: 'json', 
      beforeSend: function(){ 
        // Handle the beforeSend event showLoader(); 
      }, 
    })
    .done(function( response ) { 
       removeLoader(); 
       if(response.status==1) { 
          mytargeted code. 
       } 
    }) 
 });

ここに私のコンソールヘッダーと応答があります

ヘッダー画像 ご覧のとおり、csrfトークンを送信しています

レスポンス画像 そして、私が応答して得るもの

この問題を解決する方法を知っている人がいれば、大きな助けになります

ありがとう

4

0 に答える 0