我正在使用谷歌API,https://developers.google.com/calendar/v3/reference/events/insert在日历中插入事件。单个事件已成功插入,但是我们是否可以在一个标注中插入多个事件?
答案 0 :(得分:1)
如此thread中所述,如果您想一次插入多个事件,则应使用batch。
var batch = gapi.client.newBatch();
batch.add(gapi.client.calendar.events.insert({
'calendarId': 'primary',
'resource': events[0]
}));
batch.add(gapi.client.calendar.events.insert({
'calendarId': 'primary',
'resource': events[1]
}));
batch.add(gapi.client.calendar.events.insert({
'calendarId': 'primary',
'resource': events[2]
}));
......
batch.then(function(){
console.log('all jobs done!!!')
});
您也可以查看此link以获取更多参考资料。
答案 1 :(得分:0)
您需要使用批处理来添加/删除/更新事件。
为什么要使用批处理? 使用批处理API的主要原因是减少网络开销,从而提高性能。
这是一个示例,显示批处理使用javascript / typescript
动态添加事件的用法createMultipleEvents() {
const events = [ {
'summary': 'sample test events1',
'location': 'coimbatore',
'start': {
'date': '2018-08-29',
'timeZone': 'America/Los_Angeles'
},
'end': {
'date': '2018-08-29',
'timeZone': 'America/Los_Angeles'
}
},
{
'summary': 'sample test events2',
'location': 'coimbatore',
'start': {
'date': '2018-08-29',
'timeZone': 'America/Los_Angeles'
},
'end': {
'date': '2018-08-29',
'timeZone': 'America/Los_Angeles'
}
},
];
const batch = gapi.client.newBatch();
events.map((r, j) => {
batch.add(gapi.client.calendar.events.insert({
'calendarId': 'primary',
'resource': events[j]
}))
})
batch.then(function(){
console.log('all jobs now dynamically done!!!')
});
}
答案 2 :(得分:0)
Global HTTP Batch Endpoints(www.googleapis.com/batch)将于2020年8月12日在Google Developers博客上宣布停止工作。有关将服务转换为使用特定于API的HTTP批处理端点(www.googleapis.com/batch/api/version)的说明,请参阅博客文章。 https://developers.googleblog.com/2018/03/discontinuing-support-for-json-rpc-and.html