add('abort_command', new AbortCommand()) ->addMany($commands->autoDiscover()); } /** * @param \Cake\Http\MiddlewareQueue $middleware * @return \Cake\Http\MiddlewareQueue */ public function middleware($middleware) { $middleware->add(new RoutingMiddleware($this)); $middleware->add(function ($req, $res, $next) { /** @var \Cake\Http\ServerRequest $res */ $res = $next($req, $res); return $res->withHeader('X-Middleware', 'true'); }); return $middleware; } /** * Routes hook, used for testing with RoutingMiddleware. * * @param \Cake\Routing\RouteBuilder $routes * @return void */ public function routes($routes) { $routes->scope('/app', function (RouteBuilder $routes) { $routes->connect('/articles', ['controller' => 'Articles']); $routes->fallbacks(); }); } }