tree: 15708558e8975d0107e6878804770a587b49d90a [path history] [tgz]
  1. lib/
  2. .gitignore
  3. .travis.yml
  4. analysis_options.yaml
  5. BUILD.gn
  6. CHANGELOG.md
  7. LICENSE
  8. pubspec.yaml
  9. README.md
multi_server_socket/README.md

An implementation of dart:io‘s ServerSocket that wraps multiple servers and forwards methods to all of them. It’s useful for listening on multiple network interfaces while still having a unified way of controlling the servers. In particular, it supports serving on both the IPv4 and IPv6 loopback addresses using MultiServerSocket.loopback.

import 'package:multi_server_socket/multi_server_socket.dart';

main() async {
  // Sockets connecting to either http://127.0.0.1:8080 and http://[::1]:8080
  // will be emitted by [server].
  var server = await MultiServerSocket.loopback(8080);

  server.listen((socket) {
    // Communicate with [socket].
  });
}