From 7c89704262913cebd98f7a27918b92c87c48c9e1 Mon Sep 17 00:00:00 2001 From: Michael McDermott Date: Tue, 18 Oct 2016 10:59:38 -0400 Subject: [PATCH] Default to using "http:" protocol in http adapter Fixes #490 --- lib/adapters/http.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/adapters/http.js b/lib/adapters/http.js index 73dc26e..d6908b3 100644 --- a/lib/adapters/http.js +++ b/lib/adapters/http.js @@ -55,6 +55,8 @@ module.exports = function httpAdapter(config) { // Parse url var parsed = url.parse(config.url); + var protocol = parsed.protocol || 'http:'; + if (!auth && parsed.auth) { var urlAuth = parsed.auth.split(':'); var urlUsername = urlAuth[0] || ''; @@ -66,7 +68,7 @@ module.exports = function httpAdapter(config) { delete headers.Authorization; } - var isHttps = parsed.protocol === 'https:'; + var isHttps = protocol === 'https:'; var agent = isHttps ? config.httpsAgent : config.httpAgent; var options = { @@ -81,7 +83,7 @@ module.exports = function httpAdapter(config) { var proxy = config.proxy; if (!proxy) { - var proxyEnv = parsed.protocol.slice(0, -1) + '_proxy'; + var proxyEnv = protocol.slice(0, -1) + '_proxy'; var proxyUrl = process.env[proxyEnv] || process.env[proxyEnv.toUpperCase()]; if (proxyUrl) { var parsedProxyUrl = url.parse(proxyUrl); @@ -97,7 +99,7 @@ module.exports = function httpAdapter(config) { options.hostname = proxy.host; options.headers.host = parsed.hostname + (parsed.port ? ':' + parsed.port : ''); options.port = proxy.port; - options.path = parsed.protocol + '//' + parsed.hostname + (parsed.port ? ':' + parsed.port : '') + options.path; + options.path = protocol + '//' + parsed.hostname + (parsed.port ? ':' + parsed.port : '') + options.path; } var transport;