CakePHP4-如何将CSRF中间件应用于特定的路由范围?

问题描述

链接介绍了如何将(CSRF)中间件应用于特定的路由区域: https://book.cakephp.org/4/en/controllers/middleware.html#cross-site-request-forgery-csrf-middleware
这里有一个小问题,但已成功解决(Greg Schmidt建议)。
同时,另一个问题出现了。
我只想将“ csrf”限制为“用户”形式。
下面显示PHP代码不起作用。

 //in config/routes.PHP
$routes->scope('/',function (RouteBuilder $builder) {
    $builder->connect('/',['controller' => 'Pages','action' => 'display','home']);
    
    /*
     * ...scoped middleware can be applied to specific scopes.
     */
$builder->scope('/users',function (RouteBuilder $builder) {
    // Enable CSRF & cookies middleware
    $builder->applyMiddleware('csrf');
});  

 $builder->fallbacks(DashedRoute::class);
});

下面显示PHP代码有效。在这种情况下,“ csrf”可在所有形式上实现,我想避免这种情况。
     //in config/routes.PHP
    $routes->scope('/',function (RouteBuilder $builder) {
        $builder->connect('/','home']);
        
   $builder->applyMiddleware('csrf');  
    
     $builder->fallbacks(DashedRoute::class);
    });

请咨询,怎么了?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...