diff --git a/README.md b/README.md old mode 100644 new mode 100755 index 75b899e134..d781aca418 --- a/README.md +++ b/README.md @@ -313,6 +313,10 @@ These are the available config options for making requests. Only the `url` is re // If set to 0, no redirects will be followed. maxRedirects: 5, // default + // `socketPath` defines a UNIX Socket to be used in node.js. + // e.g. '/var/run/docker.sock' to send requests to the docker daemon. + socketPath: null, // default + // `httpAgent` and `httpsAgent` define a custom agent to be used when performing http // and https requests, respectively, in node.js. This allows options to be added like // `keepAlive` that are not enabled by default. diff --git a/lib/adapters/http.js b/lib/adapters/http.js old mode 100644 new mode 100755 index 69e8e7474d..b986487c62 --- a/lib/adapters/http.js +++ b/lib/adapters/http.js @@ -72,8 +72,6 @@ module.exports = function httpAdapter(config) { var agent = isHttps ? config.httpsAgent : config.httpAgent; var options = { - hostname: parsed.hostname, - port: parsed.port, path: buildURL(parsed.path, config.params, config.paramsSerializer).replace(/^\?/, ''), method: config.method, headers: headers, @@ -81,6 +79,13 @@ module.exports = function httpAdapter(config) { auth: auth }; + if (config.socketPath) { + options.socketPath = config.socketPath; + } else { + options.hostname = parsed.hostname; + options.port = parsed.port; + } + var proxy = config.proxy; if (!proxy && proxy !== false) { var proxyEnv = protocol.slice(0, -1) + '_proxy';