Los middlewares de enrutamiento se configuran para rutas o colecciones de rutas y solo se tienen en cuenta cuando Silex ejecuta su ruta asociada. Estos middlewares son bastante flexibles, ya que se pueden encadenar varios:
$app->get('/somewhere', function () {
// ...
})
->before($before1)
->before($before2)
->after($after1)
->after($after2)
;
3.2.1. El middleware before
El middleware de enrutamiento before
se ejecuta justo antes de la función anónima asociada a la ruta, pero justo después del middleware before
de la aplicación:
$before = function (Request $request, Application $app) {
// ...
};
$app->get('/somewhere', function () {
// ...
})
->before($before);
3.2.2. El middleware after
El middleware de enrutamiento after
se ejecuta justo después de haber finalizado la ejecución de la función anónima asociada a la ruta, pero justo antes del middleware after
de la aplicación:
$after = function (Request $request, Response $response, Application $app) {
// ...
};
$app->get('/somewhere', function () {
// ...
})
->after($after);