Using Middleware¶
If you would like to assign middleware to specific route, you should define it under the middleware scope of your route definition.
extension_controller-action:
...
options:
middleware:
- LMS\Routes\Middleware\Api\Authenticate
Combine middleware¶
You may also assign multiple middleware to the route.
Just append as many as you need under the middleware.
extension_controller-action:
...
options:
middleware:
- LMS\Routes\Middleware\Api\Authenticate
- LMS\Routes\Middleware\Api\VerifyCsrfToken
Middleware Groups¶
Sometimes you may want to group several middleware under a single key to make them easier to assign to routes.
Out of the box, EXT:routes comes with auth
middleware group that contains common middleware you may want to apply to your web UI and API routes:
extension_controller-action:
...
options:
middleware:
- auth
Note
auth
group just combines (Authenticate and VerifyCsrfToken) middleware, nothing more.
You also can create your own custom combinations if needed.
Combine Groups And Middleware¶
It’s logical, but we should mention that combination of groups and middleware is possible as well.
extension_controller-action:
...
options:
middleware:
- auth
- Vendor\Extension\Middleware\Api\MyCustomMiddleware
- LMS\Routes\Middleware\Api\VerifyAdminBackendSession