获取当前路由规则
Get current route rule
我正在尝试在我的过滤器中获取当前路由规则。
$routes->group('creditCalculator', ['namespace' => '\Modules\CreditCalculator', "filter" => 'auth:recht1', 'extra_credentials' => array('as'=>'test', 'menu'=>'profile')], function($routes){
$routes->post('/', 'CreditCalculator_Controller::index');
$routes->get('test', 'CreditCalculator_Controller::test', ["filter"=>"auth:test1", 'test2' => 'test3']);
$routes->get('test2/(:num)/(:any)', 'CreditCalculator_Controller::test2//', ["as"=>'named_route', "filter"=>"auth:recht3", 'right' => 'right1']);
在“auth”过滤器中,我想访问当前匹配的路由以获取 routeOptions。
目标:
我们想为每条路线设置一些规则。之后我们想在我们的过滤器中检查这些设置。示例:登录类型。所以我们可以查看每条路由,当前这条路由需要哪种登录类型。
我们正在使用 Codeigniter 4 HMVC。
有什么建议吗?
CI4 的文档和 api-文档并没有让我走得太远。我尝试了路由器的几种方法,但没有一种方法给我当前匹配的路由。
我需要的 return:/test/(:num)/(:any) 和该路由的选项数组
到目前为止 - 我们的过滤器:
<?php
namespace App\Filters;
use CodeIgniter\HTTP\RequestInterface;
use CodeIgniter\HTTP\ResponseInterface;
use CodeIgniter\Filters\FilterInterface;
class filterTest implements FilterInterface {
public function before(RequestInterface $request, $arguments = null) {
$list = \Config\Services::routes();
$routes = $list->getRoutesOptions();
}
public function after(RequestInterface $request, ResponseInterface $response, $arguments = null) {
}
}
我刚刚包含了错误的服务。通过服务路由器,我可以访问 'getMatchedRouteOptions' 方法。
$router = \Config\Services::router();
$routeOptions = $router->getMatchedRouteOptions();
我正在尝试在我的过滤器中获取当前路由规则。
$routes->group('creditCalculator', ['namespace' => '\Modules\CreditCalculator', "filter" => 'auth:recht1', 'extra_credentials' => array('as'=>'test', 'menu'=>'profile')], function($routes){
$routes->post('/', 'CreditCalculator_Controller::index');
$routes->get('test', 'CreditCalculator_Controller::test', ["filter"=>"auth:test1", 'test2' => 'test3']);
$routes->get('test2/(:num)/(:any)', 'CreditCalculator_Controller::test2//', ["as"=>'named_route', "filter"=>"auth:recht3", 'right' => 'right1']);
在“auth”过滤器中,我想访问当前匹配的路由以获取 routeOptions。
目标: 我们想为每条路线设置一些规则。之后我们想在我们的过滤器中检查这些设置。示例:登录类型。所以我们可以查看每条路由,当前这条路由需要哪种登录类型。
我们正在使用 Codeigniter 4 HMVC。
有什么建议吗? CI4 的文档和 api-文档并没有让我走得太远。我尝试了路由器的几种方法,但没有一种方法给我当前匹配的路由。
我需要的 return:/test/(:num)/(:any) 和该路由的选项数组
到目前为止 - 我们的过滤器:
<?php
namespace App\Filters;
use CodeIgniter\HTTP\RequestInterface;
use CodeIgniter\HTTP\ResponseInterface;
use CodeIgniter\Filters\FilterInterface;
class filterTest implements FilterInterface {
public function before(RequestInterface $request, $arguments = null) {
$list = \Config\Services::routes();
$routes = $list->getRoutesOptions();
}
public function after(RequestInterface $request, ResponseInterface $response, $arguments = null) {
}
}
我刚刚包含了错误的服务。通过服务路由器,我可以访问 'getMatchedRouteOptions' 方法。
$router = \Config\Services::router();
$routeOptions = $router->getMatchedRouteOptions();