timeout method
answer 503 when the route added last takes longer than duration.
It covers its middleware too. See RequestTimeout.
Route.get('report', controller).timeout(Duration(seconds: 30));
Implementation
Route timeout(Duration duration) {
RouteData? last = _last;
if (last == null) {
throw StateError('Route.timeout(): there is no route to time.');
}
for (RouteData data in _lastGroup ?? <RouteData>[last]) {
(data.controllers as List<dynamic>).insert(0, RequestTimeout(duration));
}
return this;
}