| // 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 'package:shelf/shelf.dart' as shelf; |
| import 'package:shelf/shelf_io.dart' as io; |
| |
| main() async { |
| var handler = const shelf.Pipeline() |
| .addMiddleware(shelf.logRequests()) |
| .addHandler(_echoRequest); |
| |
| var server = await io.serve(handler, 'localhost', 8080); |
| |
| // Enable content compression |
| server.autoCompress = true; |
| |
| print('Serving at http://${server.address.host}:${server.port}'); |
| } |
| |
| shelf.Response _echoRequest(shelf.Request request) { |
| return new shelf.Response.ok('Request for "${request.url}"'); |
| } |