我有以下代码:
$r->find('user')->via('post')->over(authenticated => 1);
鉴于该路由,我可以通过使用 Mojolicious::Plugin::Authentication 设置的经过身份验证的检查到达用户路由。
我想在该路线上添加另一个“结束”。
$r->find('user')->via('post')->over(authenticated => 1)->over(access => 1);
不过,这似乎覆盖了经过身份验证的“过度”。
我尝试使用以下名称分解路线:
my $auth = $r->route('/')->over(authenticated => 1)
->name('Authenticated Route');
$access = $auth->route('/user')->over(access => 1)->name('USER_ACCESS');
但这根本不起作用。两个'over'都没有被访问。
我的路由是 /user、/item 之类的东西,使用 MojoX::JSON::RPC::Service 设置。所以,我没有 /user/:id 之类的东西来设置子路由。(不确定是否重要)所有路由都像 /user,用参数发送。
我有这样的条件:
$r->add_condition(
access => sub {
# do some stuff
},
);
那就是 $r->route('/user')->over(access => 1); 中的“访问”
简而言之,路线在使用时可以正常工作:
$r->find('user')->via('post')->over(authenticated => 1);
但我无法添加第二条路线。
那么,在设置这些具有多个条件的路线时,我缺少什么?是否可以将多个条件添加到单个路由/route_name?