Fix shelf_web_socket's Connection handling.

R=rnystrom@google.com
BUG=21894

Review URL: https://codereview.chromium.org//810133002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/shelf_web_socket@42446 260f80e4-7a28-3924-810f-c04153c831b5
4 files changed
tree: 457261a1c2fb3fa955cee780a03958ca9071e4ae
  1. lib/
  2. test/
  3. CHANGELOG.md
  4. LICENSE
  5. pubspec.yaml
  6. README.md
README.md

Web Socket Handler for Shelf

shelf_web_socket is a Shelf handler for establishing WebSocket connections. It exposes a single function, webSocketHandler, which calls an onConnection callback with a CompatibleWebSocket object for every connection that's established.

import 'package:shelf/shelf_io.dart' as shelf_io;
import 'package:shelf_web_socket/shelf_web_socket.dart';

void main() {
  var handler = webSocketHandler((webSocket) {
    webSocket.listen((message) {
      webSocket.add("echo $message");
    });
  });

  shelf_io.serve(handler, 'localhost', 8080).then((server) {
    print('Serving at ws://${server.address.host}:${server.port}');
  });
}