google-apps-script - 对 calendar.events.list 的 API 调用失败并出现错误:同步令牌不再有效,需要完全同步。我应该怎么办?
问题描述
我收到有关同步令牌无效且需要完全同步的错误。我应该在代码中添加什么来修复它?
- 使用 google appscript 将多个 google 日历事件发送到 google sheet
我尝试阅读 Google Calendar API,但我不知道在哪里更改代码。
这是同步令牌的一些代码。
function updateSyncToken(calendarId, syncToken) {
var spreadsheetId = 'sheetID';
if(calendarId == 'Cal1') {
var range = 'Settings!B2';
} else if(calendarId == 'Cal2') {
var range = 'Settings!B3';
} else if(calendarId == 'Cal3') {
var range = 'Settings!B4';
} else if(calendarId == 'Cal4') {
var range = 'Settings!B5';
} else if(calendarId == 'Cal5') {
var range = 'Settings!B6';
} else if(calendarId == 'Cal6') {
var range = 'Settings!B7';
} else if(calendarId == 'Cal7') {
var range = 'Settings!B8';
} else if(calendarId == 'Cal8') {
var range = 'Settings!B9';
} else if(calendarId == 'Cal9') {
var range = 'Settings!B10';
} else if(calendarId == 'Cal10') {
var range = 'Settings!B11';
} else {
return
}
var values = [[syncToken]];
var valueRange = Sheets.newRowData();
valueRange.values = values;
var appendRequest = Sheets.newAppendCellsRequest();
appendRequest.sheetId = spreadsheetId;
appendRequest.rows = [valueRange];
var result = Sheets.Spreadsheets.Values.update(valueRange, spreadsheetId, range, {
valueInputOption: 'RAW'
});
}
function fetchEvents(calendarId, syncToken, sheetId) {
var options = {
syncToken: syncToken
};
var response = Calendar.Events.list(calendarId, options);
var events = response.items;
if (events.length > 0) {
updateSyncToken(calendarId, response.nextSyncToken)
logEvents(events, sheetId);
}
}
解决方案
推荐阅读
- javascript - 如何在 Phaser 3 中每分钟运行一个函数?
- android - 我的硬件是否冲突,导致 AVD 非常慢?
- docker - 如何通过查找纱线来修复 docker 容器中的错误?
- python - 使用像 nltk 这样的 Python 库缩短句子
- amazon-web-services - 如何在 dynamodb 的过滤器表达式中添加日期范围
- amazon-web-services - AWS Sagemaker,如何将现有的本地 jupyter notebook 与 ML 算法连接到 AWS
- python - 参数未传递给 Scipy solve_ivp
- reactjs - 在 React.js 中创建范围滑块
- curl - Apache Camel 与 Spring Boot 集成 REST API
- linux - linux虚拟内存附加/分离信号