Skip to content
A dart:io HttpServer wrapper that handles requests from multiple servers.
Dart
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
example
lib Fix newly enforced package:pedantic lints (#20) Dec 9, 2019
test Fix newly enforced package:pedantic lints (#20) Dec 9, 2019
.gitignore remove .pub and packages May 28, 2018
.test_config
.travis.yml
CHANGELOG.md
LICENSE Add a LICENSE file to pkg/http_multi_server. Jun 5, 2014
README.md Async/await Sep 16, 2019
analysis_options.yaml
pubspec.yaml

README.md

An implementation of dart:io's HttpServer that wraps multiple servers and forwards methods to all of them. It's useful for serving the same application 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 HttpMultiServer.loopback.

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

void main() async {
  // Both http://127.0.0.1:8080 and http://[::1]:8080 will be bound to the same
  // server.
  var server = await HttpMultiServer.loopback(8080);
  shelf_io.serveRequests(server, (request) {
    return shelf.Response.ok("Hello, world!");
  });
}
You can’t perform that action at this time.