问题描述
此链接介绍了如何将(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 (将#修改为@)