From 7a5d5d1409a7b7d8f47510991c8396f7c56a296c Mon Sep 17 00:00:00 2001 From: yppo Date: Thu, 20 Aug 2020 23:22:31 +0100 Subject: [PATCH] Add ability to import import JSON-P data As per https://github.com/bradjasper/ImportJSON/labels/enhancement --- ImportJSON.gs | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/ImportJSON.gs b/ImportJSON.gs index 731806e..1256314 100644 --- a/ImportJSON.gs +++ b/ImportJSON.gs @@ -218,9 +218,17 @@ function ImportJSONFromSheet(sheetName, query, options) { **/ function ImportJSONAdvanced(url, fetchOptions, query, parseOptions, includeFunc, transformFunc) { var jsondata = UrlFetchApp.fetch(url, fetchOptions); - var object = JSON.parse(jsondata.getContentText()); - - return parseJSONObject_(object, query, parseOptions, includeFunc, transformFunc); + try { + var object = JSON.parse(jsondata.getContentText()); + return parseJSONObject_(object, query, parseOptions, includeFunc, transformFunc); + } + catch(err) { + var object = jsondata.getContentText(); + var firstBr = object.indexOf("[") > object.indexOf("{") ? object.indexOf("{") : object.indexOf("["); + var lastBr = object.lastIndexOf(")"); + var newObject= JSON.parse(object.substring(firstBr, lastBr)); + return parseJSONObject_(newObject, query, parseOptions, includeFunc, transformFunc); + } } /**