Skip to content
Snippets Groups Projects
Commit 0ae5ab05 authored by Natalie Weizenbaum's avatar Natalie Weizenbaum
Browse files

Use http_multi_server for serving on localhost.

This helps avoid issues where "localhost" means different things on
different platforms.

Closes #100

R=kevmoo@google.com

Review URL: https://codereview.chromium.org//1145483003
parent e8d1f789
No related branches found
No related tags found
No related merge requests found
......@@ -8,6 +8,7 @@ import 'dart:async';
import 'dart:convert';
import 'dart:io';
import 'package:http_multi_server/http_multi_server.dart';
import 'package:path/path.dart' as p;
import 'package:pool/pool.dart';
import 'package:shelf/shelf.dart' as shelf;
......@@ -144,7 +145,7 @@ class BrowserServer {
_compilers = new CompilerPool(color: color);
/// Starts the underlying server.
Future _load() {
Future _load() async {
var cascade = new shelf.Cascade()
.add(_webSocketHandler.handler);
......@@ -160,9 +161,8 @@ class BrowserServer {
.addMiddleware(nestingMiddleware(_secret))
.addHandler(cascade.handler);
return shelf_io.serve(pipeline, 'localhost', 0).then((server) {
_server = server;
});
_server = await HttpMultiServer.loopback(0);
shelf_io.serveRequests(_server, pipeline);
}
/// Returns a handler that serves the contents of the "packages/" directory
......
......@@ -10,6 +10,7 @@ dependencies:
args: '>=0.12.1 <0.14.0'
barback: '>=0.14.0 <0.16.0'
crypto: '^0.9.0'
http_multi_server: '^1.0.0'
http_parser: '^0.0.2'
path: '^1.2.0'
pool: '^1.0.0'
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment