| // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| import 'dart:async'; |
| |
| import 'request.dart'; |
| import 'response.dart'; |
| |
| /// A function which handles a [Request]. |
| /// |
| /// For example a static file handler may read the requested URI from the |
| /// filesystem and return it as the body of the [Response]. |
| /// |
| /// A [Handler] which wraps one or more other handlers to perform pre or post |
| /// processing is known as a "middleware". |
| /// |
| /// A [Handler] may receive a request directly from an HTTP server or it |
| /// may have been touched by other middleware. Similarly the response may be |
| /// directly returned by an HTTP server or have further processing done by other |
| /// middleware. |
| typedef FutureOr<Response> Handler(Request request); |