【问题标题】:call middleware in specific routing scope cakephp 3在特定路由范围内调用中间件 cakephp 3
【发布时间】:2017-12-04 09:41:56
【问题描述】:

我创建了一个自定义中间件,并尝试在 cakephp 3.5.x 中 Cases 下的特定路由范围内使用,

要求:

routes.php

use Api\Middleware\CasesMiddleware;

Router::scope('/', function (RouteBuilder $routes) {

    $routes->registerMiddleware('CasesRequired', new CasesMiddleware());

    Router::scope('/Cases', function (RouteBuilder $routes) {
        $routes->applyMiddleware('CasesRequired');
    }
}

但这不起作用。但是当我把$routes->applyMiddleware('CasesRequired') 放在路由范围之外cases 然后它的工作方式如下所示,

Router::scope('/', function (RouteBuilder $routes) {

    $routes->registerMiddleware('CasesRequired', new CasesMiddleware());
    $routes->applyMiddleware('CasesRequired');

    Router::scope('/Cases', function (RouteBuilder $routes) {

    }
}

请提出问题所在.......只能在路由范围Cases下调用中间件。

【问题讨论】:

    标签: cakephp routing cakephp-3.0 middleware


    【解决方案1】:
    use Api\Middleware\CasesMiddleware;
    
    Router::scope('/', function (RouteBuilder $routes) {
    
        $routes->registerMiddleware('CasesRequired', new CasesMiddleware());
    
        $routes->scope('/Cases', function ($routes) {
            $routes->applyMiddleware('CasesRequired');
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-10-18
      • 2013-07-15
      • 2016-11-16
      • 2011-08-20
      • 2011-07-19
      • 2021-09-17
      • 2016-12-10
      • 1970-01-01
      相关资源
      最近更新 更多