From 0b3db5d87a60a1ad8b0dce9669dbc10483ec33da Mon Sep 17 00:00:00 2001 From: Tim Garthwaite Date: Wed, 11 Apr 2018 11:23:38 -0400 Subject: [PATCH] Fixing defaults to use httpAdapter if available (#1285) * Fixing defaults to use httpAdapter if available * Use a safer, cross-platform method to detect the Node environment --- lib/defaults.js | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/defaults.js b/lib/defaults.js index 65a25d5143..c9614260d3 100644 --- a/lib/defaults.js +++ b/lib/defaults.js @@ -15,12 +15,13 @@ function setContentTypeIfUnset(headers, value) { function getDefaultAdapter() { var adapter; - if (typeof XMLHttpRequest !== 'undefined') { - // For browsers use XHR adapter - adapter = require('./adapters/xhr'); - } else if (typeof process !== 'undefined') { + // Only Node.JS has a process variable that is of [[Class]] process + if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') { // For node use HTTP adapter adapter = require('./adapters/http'); + } else if (typeof XMLHttpRequest !== 'undefined') { + // For browsers use XHR adapter + adapter = require('./adapters/xhr'); } return adapter; }