OLD | NEW |
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 import 'package:shelf/shelf.dart' as shelf; | 5 import 'package:shelf/shelf.dart' as shelf; |
6 import 'package:shelf/shelf_io.dart' as io; | 6 import 'package:shelf/shelf_io.dart' as io; |
7 | 7 |
8 void main() { | 8 main() async { |
9 var handler = const shelf.Pipeline() | 9 var handler = const shelf.Pipeline() |
10 .addMiddleware(shelf.logRequests()) | 10 .addMiddleware(shelf.logRequests()) |
11 .addHandler(_echoRequest); | 11 .addHandler(_echoRequest); |
12 | 12 |
13 io.serve(handler, 'localhost', 8080).then((server) { | 13 var server = await io.serve(handler, 'localhost', 8080); |
14 print('Serving at http://${server.address.host}:${server.port}'); | 14 |
15 }); | 15 // Enable content compression |
| 16 server.autoCompress = true; |
| 17 |
| 18 print('Serving at http://${server.address.host}:${server.port}'); |
16 } | 19 } |
17 | 20 |
18 shelf.Response _echoRequest(shelf.Request request) { | 21 shelf.Response _echoRequest(shelf.Request request) { |
19 return new shelf.Response.ok('Request for "${request.url}"'); | 22 return new shelf.Response.ok('Request for "${request.url}"'); |
20 } | 23 } |
OLD | NEW |