yii2出现Unable to verify your data submission错误

本文介绍了解决在使用Yii2框架时遇到的CSRF验证问题的方法。通过在控制器中禁用特定方法的CSRF验证,可以避免非Web表单提交时的验证失败。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


 

 yii2.0post方式提供参数给网站时,出现了以下这个问题:

    

      出现这个情况是因为表单在提交的时候时,被yii2的CSRF验证拦截了,只需把它禁用掉即可    

       Web网页访问的时候form表单中会有对应的一个隐藏input:_csrf进行了验证才可以正常进行访问; 而非网页访问方式(不通过Web表单)是无法通过csrf验证的。因此我在使用curl上次上传参数时,会出现这个问题。

        可以在当前所在的控制器设置

      

public function beforeAction($action) {

    $currentaction = $action->id;

    $novalidactions = ['add','del'];  //数组指的是方法名,哪个方法需要关闭_csrf,就将方法名写进数组中

    if(in_array($currentaction,$novalidactions)) {

        $action->controller->enableCsrfValidation = false;
    }
    parent::beforeAction($action);

    return true;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值