Ситуация простая. Мне нужно по запросу API, получить на выходе список всех авто в базе данных. Ответ мне приходит JSON формата, с кучей данных, но они повторяются, условно "Number" = Номер машины и учитывая сколько машин, столько и будет этих ключей.
Вот ответ от API для понимания:
[
{
"Number": "Рћ668РќРђ198",
"STSSeries": "9930",
"STSNumber": "935697",
"Model": "Skoda Rapid",
"Activity": false,
"IcorrectData": false,
"LastInspectionDate": null,
"LastInspectionMileage": null,
"INN": "0000000000",
"KPP": "0000000000",
"Department": "",
},
{
"Number": "Рћ514РђРњ32",
"STSSeries": "9922",
"STSNumber": "622704",
"Model": "Datsun On-Do",
"Activity": false,
"IcorrectData": false,
"LastInspectionDate": null,
"LastInspectionMileage": null,
"INN": "0000000000",
"KPP": "0000000000",
"Department": "ЮДБ ",
},
Вот мой код:
var USERNAME = 'USERNAME ';
var PASSWORD = 'PASSWORD';
var url = `https://taksi.0nalog.com:00000/BALALAYKA/hs/Car/v1/Get`
var headers = {
"Authorization" : "Basic " + Utilities.base64Encode(USERNAME + ':' + PASSWORD)
};
var params = {
"method":"GET",
"headers":headers
};
function get_Number(num) {
var response_text = UrlFetchApp.fetch(url, params);
return JSON.parse(response_text)[num]['Number']
}
function get_Model(mod) {
var response_text = UrlFetchApp.fetch(url, params);
return JSON.parse(response_text)[mod]['Model']
}
function get_Status(sta) {
var response_text = UrlFetchApp.fetch(url, params);
return JSON.parse(response_text)[sta]['Status']
}
function get_Driver(drv) {
var response_text = UrlFetchApp.fetch(url, params);
return JSON.parse(response_text)[drv]['Driver']
}
function get_Department(dep) {
var response_text = UrlFetchApp.fetch(url, params);
return JSON.parse(response_text)[dep]['Department']
}
function get_Reason(res) {
var response_text = UrlFetchApp.fetch(url, params);
return JSON.parse(response_text)[res]['Reason']
}
function get_Comment(come) {
var response_text = UrlFetchApp.fetch(url, params);
return JSON.parse(response_text)[come]['Comment']
}
А теперь о ситуации, как вы видите мой код вечно обращается к API и создает уйму запросов, хотелось бы понять, как мне сделать так, что бы после 1го запроса раз в 5 минут, он собирал весь JSON-ответ в условный КЭШ и уже из него собирал данные для функций.
Данные функции мне нужно для заполнения Google Таблицы. Именно в нее я и произвожу парсинг всей базы авто, для того, что бы в дальнейшем в автоматическом режиме отслеживать их статусы.
А вот как выглядит таблица (в каждой ячейке функция, в идеале понять бы как сделать так, что бы со стороны скрипта без ввода текста было автозаполнение массива данных.)