From 63edeb1c36bfcea278c248e8be92f7dbb75f7671 Mon Sep 17 00:00:00 2001 From: Nayeem Rahman Date: Mon, 13 Jul 2020 05:56:45 +0100 Subject: fix(cli/js/web/url): Implement IPv4 hostname parsing (#6707) --- std/http/server.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'std/http/server.ts') diff --git a/std/http/server.ts b/std/http/server.ts index 5908fcf9a..b1ffed96b 100644 --- a/std/http/server.ts +++ b/std/http/server.ts @@ -248,7 +248,8 @@ export type HTTPOptions = Omit; export function _parseAddrFromStr(addr: string): HTTPOptions { let url: URL; try { - url = new URL(`http://${addr}`); + const host = addr.startsWith(":") ? `0.0.0.0${addr}` : addr; + url = new URL(`http://${host}`); } catch { throw new TypeError("Invalid address."); } @@ -263,7 +264,7 @@ export function _parseAddrFromStr(addr: string): HTTPOptions { } return { - hostname: url.hostname == "" ? "0.0.0.0" : url.hostname, + hostname: url.hostname, port: url.port === "" ? 80 : Number(url.port), }; } -- cgit v1.2.3