From 1c035b9b140875d8dcc8a08c1b47af177948dd91 Mon Sep 17 00:00:00 2001 From: Sebastian Imlay Date: Tue, 1 Mar 2016 19:31:12 -0800 Subject: [PATCH] Added check on content-type in http error handling --- lib/errorHandler.js | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/lib/errorHandler.js b/lib/errorHandler.js index ed4b046..dda820c 100644 --- a/lib/errorHandler.js +++ b/lib/errorHandler.js @@ -40,10 +40,16 @@ function handleHttpError(err, response, callback) { if (response.statusCode !== 200 && response.statusCode !== 201 && response.statusCode !== 204) { - var errorBody = _parseError(JSON.parse(response.body)); - var error = createError(response.statusCode, - errorBody.message, - {name: _convertErrorName(errorBody.id)}); + var error = null; + if(response.getHeader('content-type') == 'text/json') { + var errorBody = _parseError(JSON.parse(response.body)); + error = createError(response.statusCode, + errorBody.message, + {name: _convertErrorName(errorBody.id)}); + } else { + error = createError(response.statusCode, + 'InternalServerError'); + } callback(error, null); return true; }