diff --git a/lib/webhelper.js b/lib/webhelper.js index 5c20313..6c5cb31 100644 --- a/lib/webhelper.js +++ b/lib/webhelper.js @@ -126,32 +126,36 @@ function WebHelper(credentials, hostName) { addUserAgentString(options); return new Promise((resolve, reject) => { - var request = https.request(options, function (response) { - - response.setEncoding("utf8"); - var str = ""; - - response.on("data", function (chunk) { - str += chunk; - }); - response.on("end", function () { - if (response.statusCode >= 400) { - var err = new Error(response.statusMessage); - err.statusCode = response.statusCode; + try { + var request = https.request(options, function (response) { + + response.setEncoding("utf8"); + var str = ""; + + response.on("data", function (chunk) { + str += chunk; + }); + response.on("end", function () { + if (response.statusCode >= 400) { + var err = new Error(response.statusMessage); + err.statusCode = response.statusCode; + reject(err); + + } else { + resolve((str.length > 0) ? JSON.parse(str) : null); + } + }); + response.on("error", function (err) { reject(err); - - } else { - resolve((str.length > 0) ? JSON.parse(str) : null); - } - }); - response.on("error", function (err) { - reject(err); + }); }); - }); - if (postData) { - request.write(postData); + if (postData) { + request.write(postData); + } + request.end(); + } catch (err) { + reject(err); } - request.end(); }); }