From 24b9110a629053c0517563a4ae3ed7f2033c2c28 Mon Sep 17 00:00:00 2001 From: Tomasz Sterna Date: Fri, 16 Jan 2015 16:00:48 +0100 Subject: [PATCH] Fixed uncaught exception on parsing non-JSON AJAX response --- src/main.js | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/main.js b/src/main.js index 1202921..3236730 100644 --- a/src/main.js +++ b/src/main.js @@ -64,10 +64,15 @@ var request = function (method, url, data, contentType, headers) { xhr.onreadystatechange = function () { if (xhr.readyState === 4) { - if (xhr.status >= 200 && xhr.status < 300) { - resolve(xhr.responseText ? JSON.parse(xhr.responseText) : null); - } else { - reject(xhr.responseText ? JSON.parse(xhr.responseText) : null); + try { + var response = xhr.responseText ? JSON.parse(xhr.responseText) : null; + if (xhr.status >= 200 && xhr.status < 300) { + resolve(response); + } else { + reject(response); + } + } catch (e) { + reject(e); } }