-
Notifications
You must be signed in to change notification settings - Fork 129
Open
Description
It would be great to add middleware annotation for handlers.
So, it can be something like that:
class ShelfMiddleware {
const ShelfMiddleware(this.middleware);
final List<Middleware Function()> middleware;
}
Middleware _logRequests() {
return logRequests(
logger: (message, isError) {
if (isError) {
_logger.severe(message);
} else {
_logger.info(message);
}
},
);
}
class FeedController {
Router get router => _$FeedControllerRouter(this);
@Route.get('/feed')
@ShelfMiddleware([_logRequests])
Future<Response> feed(Request request) async {
/// some code
}
}
Also, it would be cool to add this annotation to controller, like so:
@ShelfMiddleware([_authorize])
class FeedController {
Router get router => _$FeedControllerRouter(this);
@Route.get('/feed')
@ShelfMiddleware([_logRequests])
Future<Response> feed(Request request) async {
/// some code
}
}
So, this way all handlers inside FeedController
have _authorize
middleware
shirne and agussyahrilmubarok
Metadata
Metadata
Assignees
Labels
No labels