server.dart 925 B

1234567891011121314151617181920212223242526272829
  1. import 'package:myshelf/handlers/realtime_handler.dart';
  2. import 'package:shelf/shelf.dart';
  3. import 'package:shelf/shelf_io.dart' as shelf_io;
  4. import 'package:shelf_router/shelf_router.dart';
  5. import 'package:myshelf/handlers/greet_handler.dart';
  6. import 'package:myshelf/handlers/echo_handler.dart';
  7. import 'package:myshelf/handlers/upload_handler.dart';
  8. void main() async {
  9. // Create a router
  10. final router = Router();
  11. // Define routes
  12. router.get('/greet', handleGreet);
  13. router.post('/echo', handleEcho);
  14. router.post('/upload', handleFileUpload);
  15. router.post('/realtime', handleRealtime);
  16. // Create a middleware pipeline
  17. final handler = const Pipeline()
  18. .addMiddleware(logRequests())
  19. // .addMiddleware(checkAuthorization())
  20. .addHandler(router);
  21. // Start the server
  22. final server = await shelf_io.serve(handler, '0.0.0.0', 8080);
  23. print('Server listening on port ${server.port}');
  24. }