Я использую flutter / dart для извлечения JSON файлов из Google Sheet. Я использую два разных метода для получения одного и того же листа Google: один - с помощью сценария, а другой - из службы «Sheetlabs». Однако листы работают, а сценарии не работают. Верхний уровень из таблиц листов - это массив, а верхний уровень из сценариев - это объект.
Я просто копирую файл сценария с YouTube и понятия не имею о сценариях Google. Как я могу изменить код сценария, чтобы сделать верхний уровень и массив такими же, как файл Sheetlabs?
Структура листа Google относительно проста - 10 столбцов с 'stockcode', 'stockname' и т. Д. c как заголовок, который замораживается. Шесть данных по акциям в строках.
Ниже код скрипта.
function doGet(e){
var ss = SpreadsheetApp.openByUrl("MY ORIGINAL GOOGLE SHEET'S URL ADDRESS");
var sheet = ss.getSheetByName("sheet1");
return getUsers(sheet);
}
function getUsers(sheet){
var jo = {};
var dataArray = [];
var rows = sheet.getRange(2,1,sheet.getLastRow()-1, sheet.getLastColumn()).getValues();
for(var i = 0, l= rows.length; i<l ; i++){
var dataRow = rows[i];
var record = {};
record['stockname'] = dataRow[0];
record['stockcode'] = dataRow[1];
record['marketvalue'] = dataRow[2];
record['amount'] = dataRow[3];
record['currentprice'] = dataRow[4];
record['averagecost'] = dataRow[5];
record['profit'] = dataRow[6];
record['profitpercent'] = dataRow[7];
record['previousclosingprice'] = dataRow[8];
record['todaysprofit'] = dataRow[9];
dataArray.push(record);
}
jo.user = dataArray;
var result = JSON.stringify(jo);
return ContentService.createTextOutput(result).setMimeType(ContentService.MimeType.JSON);
}
JSON конструкция из листов