simple-php-router icon indicating copy to clipboard operation
simple-php-router copied to clipboard

Passing parameters to middlewares

Open michaelthedev opened this issue 1 year ago • 1 comments

Hi I've looked through the documentation and other issues raised here and I can't find any working way to pass parameters to middleware

I'm looking to achieve something like this

Router::group( ['middleware' => ['limiter,1,2'] ], function () {});

or this

Router::post('/path-here', [Controller::class, 'method'])
    ->addMiddleware(Limiter::class, 'paramter1', 'parameter2');

// or 
Router::post('/path-here', [Controller::class, 'method'])
    ->addMiddleware(Limiter::class, ['paramter1', 'parameter2']);

I'm available to assist on this if needed. Thanks and Happy New Year

michaelthedev avatar Jan 05 '24 22:01 michaelthedev

Hi. It doesn't have a wrapper like that for the middlewares at the moment unfortunately. If you need to pass variables you will have to add a function and pass them on the request object or create alternatively create middlewares and make them extend a base one.

request()->user = User::find(1);

Happy new year!

skipperbent avatar Jan 05 '24 23:01 skipperbent