Создадим исходные данные. Создадим новую гугл таблицу и введем данные в два столбца:
Откроем редактор скриптов и введем текст функции doGet ()
//--------------------
//--- function doGet - когда пользователь посещает приложение или программа отправляет ему GETз
//--- Справка - https://developers.google.com/apps-script/guides/web?hl=ru
//--- Автор: Andrey Sipelawes
//--- Дата создания: 2020-05-15
//--------------------
function doGet(e){
// Заменить на URL Вашей таблицы
var ss = SpreadsheetApp.openByUrl("URL Вашей таблицы");
// sheet - имя листа в таблице, заменить на имя Вашего листа в таблице
var sheet = ss.getSheetByName("sheet - имя Вашего листа в таблице");
return getUsers(sheet);
}
В моем случае будет:
function doGet(e){
// Заменить на URL Вашей таблицы
var ss = SpreadsheetApp.openByUrl("https://docs.google.com/spreadsheets/d/1TO4mbdjVi36wrm7GccEvTn7rqfgwnIZD35i5PQJxWGs/edit?usp=sharing");
// sheet - имя листа в таблице, заменить на имя Вашего листа в таблице
var sheet = ss.getSheetByName("test");
// вызываем нашу функцию по созданию JSON
return getTest(sheet);
}
Далее создадим функцию по обработке полученных данных и вывод их в формате JSON.
/--------------------
//--- function getTest - вывод данных с листа гугл таблицы в формате JSON
//--- Автор: Andrey Sipelawes
//--- Дата создания: 2020-05-15
//--------------------
function getTest(sheet){
var jo = {};
var dataArray = [];
// заносим данные с листа test в массив rows
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['id'] = dataRow[0];
record['name'] = dataRow[1];
dataArray.push(record);
}
jo.user = dataArray;
var result = JSON.stringify(jo);
return ContentService.createTextOutput(result).setMimeType(ContentService.MimeType.JSON);
}
Опубликуем наше веб приложение
Проверим