From 4351f62d4609036ca306870d9b0b53f2d31dfd13 Mon Sep 17 00:00:00 2001 From: Evoke-PHP Date: Wed, 26 Jan 2022 07:18:02 +1030 Subject: [PATCH] Issue 2624 no content 204 parse (#2641) Co-authored-by: Paul Young --- request/request.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/request/request.js b/request/request.js index 972565fa..13cdc2c4 100644 --- a/request/request.js +++ b/request/request.js @@ -123,7 +123,11 @@ module.exports = function($window, Promise, oncompletion) { if (responseType === "json") { // For IE and Edge, which don't implement // `responseType: "json"`. - if (!ev.target.responseType && typeof args.extract !== "function") response = JSON.parse(ev.target.responseText) + if (!ev.target.responseType && typeof args.extract !== "function") { + // Handle no-content which will not parse. + try { response = JSON.parse(ev.target.responseText) } + catch (e) { response = null } + } } else if (!responseType || responseType === "text") { // Only use this default if it's text. If a parsed // document is needed on old IE and friends (all