commit | 681aac13e644f6e3d8ce10242040cb0e4bffa409 | [log] [tgz] |
---|---|---|
author | Natalie Weizenbaum <nweiz@google.com> | Mon Jun 20 14:20:49 2016 -0700 |
committer | Natalie Weizenbaum <nweiz@google.com> | Mon Jun 20 14:20:49 2016 -0700 |
tree | 29e6175b5632a06720b0665b27ad72a3151756fd | |
parent | 20e2bb582ef909636aa3d65d70abb06c51cc73f2 [diff] |
Properly depend on async. We had this as a dev dependency, but we were importing it from lib. R=jmesserly@google.com Review URL: https://codereview.chromium.org//2074573002 .
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() { // Both http://127.0.0.1:8080 and http://[::1]:8080 will be bound to the same // server. HttpMultiServer.loopback(8080).then((server) { shelf_io.serveRequests(server, (request) { return new shelf.Response.ok("Hello, world!"); }); }); }