Я могу прочитать из Google листа API один раз, но он не обновляется впоследствии - PullRequest
0 голосов
/ 12 июня 2018

Я новичок в Google Sheets, и у меня есть Google Sheet, который я настроил для динамического размещения текущей даты в ячейке A1 и времени в ячейке A2.Лист «публикуется в Интернете», а «Настройки / Расчеты» устанавливаются на Пересчитывать изменения каждую минуту.

Это все работает нормально, но я хочу иметь возможность считывать эти значения с листа, используяВызов API.Также отлично работает, ВПЕРВЫЕ.К сожалению, каждый раз, когда я пытаюсь вызвать его снова, я получаю тот же ответ, что и в первый раз, даже через день.

Я использую:

=int(hour(now()))&":"&int(minute(now()))&" "&int(SECOND(now())) 

в качестве формулы.Я также должен добавить, что это JSON-файл, который я читаю, и он корректно обновляется на самом листе.

Я уверен, что что-то упустил.Может кто-нибудь сказать, пожалуйста, что это?Заранее спасибо.

1 Ответ

0 голосов
/ 13 июня 2018

возможно, вы неправильно читаете JSON.Это дает мне правильный результат каждый раз, когда я запускаю его.

function myFunction(){
var url = "https://spreadsheets.google.com/feeds/cells/1TtXe1JXKsxHKUWb3bqniHkLQB0Po1fSUqsiib2yMv90/1/public/values?alt=json";
try{
var sh = SpreadsheetApp.getActive().getSheetByName("Sheet1");
var response = UrlFetchApp.fetch(url)
var str = response.getContentText();
var data = JSON.parse(response);
var entry = data.feed.entry;
sh.getRange(1, 1).setValue(entry[0].content.$t);
sh.getRange(1, 2).setValue(entry[1].content.$t);
}catch(e){
Logger.log(e);
}
}

Вам необходимо проверить размер "записи" перед ее чтением, я просто хотел показать, что она работает.

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...