From 3c875f7181042ffa77bd73e7496dd794f4402a58 Mon Sep 17 00:00:00 2001 From: Tom Fuertes Date: Tue, 10 Dec 2019 12:55:21 -0600 Subject: [PATCH 1/3] Update request.js --- lib/request.js | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/lib/request.js b/lib/request.js index 739c294..0aa81a1 100644 --- a/lib/request.js +++ b/lib/request.js @@ -108,14 +108,29 @@ class Request { res.on('end', () => { logger('Request complete'); + if (res.statusCode >= 400 && res.statusCode <= 600) { + if (shouldUnzip) { + const unzip = contentEncoding === 'deflate' ? zlib.deflate : zlib.gunzip; + return unzip(Buffer.from(body, encoding), (err, data) => { + if (err) { + return reject(err); + } + + const error = new Error(`Request returned error code: ${res.statusCode} and body: ${data.toString('utf8')}`); + error.code = res.statusCode; + error.responseBody = data.toString('utf8'); + return reject(error); + }); + } + const error = new Error(`Request returned error code: ${res.statusCode} and body: ${body}`); error.code = res.statusCode; error.responseBody = body; return reject(error); } - + // Use GZIP decompression if required if (shouldUnzip) { const unzip = contentEncoding === 'deflate' ? zlib.deflate : zlib.gunzip; From 2c4dcac3871a3e7e22684a01c6399955b0df87e9 Mon Sep 17 00:00:00 2001 From: Tom Fuertes Date: Wed, 18 Mar 2020 13:12:54 -0500 Subject: [PATCH 2/3] Update request.js --- lib/request.js | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/request.js b/lib/request.js index 0aa81a1..78a2bba 100644 --- a/lib/request.js +++ b/lib/request.js @@ -108,7 +108,6 @@ class Request { res.on('end', () => { logger('Request complete'); - if (res.statusCode >= 400 && res.statusCode <= 600) { if (shouldUnzip) { const unzip = contentEncoding === 'deflate' ? zlib.deflate : zlib.gunzip; From 1a1292aeaedbb8436b9d983c86cec6c1b87b8de1 Mon Sep 17 00:00:00 2001 From: Tom Fuertes Date: Wed, 18 Mar 2020 13:14:20 -0500 Subject: [PATCH 3/3] Update request.js --- lib/request.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/request.js b/lib/request.js index 78a2bba..c73973d 100644 --- a/lib/request.js +++ b/lib/request.js @@ -129,7 +129,7 @@ class Request { return reject(error); } - + // Use GZIP decompression if required if (shouldUnzip) { const unzip = contentEncoding === 'deflate' ? zlib.deflate : zlib.gunzip;