我想知道是否有可能让我的同事进行日历活动?例如,我有此功能,只能让蓝色的人预定会议和诸如此类的东西,但我想知道如何从同事日历中获取信息?我可以将我的同事的日历添加到我的日历中,但由于它是另一种颜色或其他颜色,所以无法获取它。.您知道gmail上的日历
代码:
const timeMin = startOfMonth(new Date(2018, 7, 01));
const timeMax = endOfMonth(new Date(2018, 7, 31));
function getEvents(req, res) {
const calendar = google.calendar({ version: "v3", auth: oauth2Client });
return new Promise((resolve, reject) => {
calendar.events.list(
{
auth: oauth2Client,
calendarId: "primary",
timeMin: timeMin.toISOString(),
timeMax: timeMax.toISOString(),
maxResults: 50,
singleEvents: true,
orderBy: "startTime"
},
(err, res) => {
if (err) return reject(err);
return resolve(res);
}
);
})
.then(response => {
const { items } = response.data;
//Log out each event> items.forEach(item => console.log(item));
res.status(200).send(items);
})
.catch(console.log);
}
那么我应该如何获得不同的gcal事件,或者一次获得所有的gcal事件,或者该如何解决?如果相关,我会使用oauth2client授权该帐户。
答案 0 :(得分:0)
运行该代码时,您将有权访问验证其数据的用户。如果要访问不同的帐户,则每个用户都必须对应用程序进行身份验证。如果您想同时访问,则可能无法使用JavaScript。
通常,使用服务器端编程语言,您可以让用户对其进行身份验证并保存刷新令牌,然后当他们离线时就可以访问他们的数据。然后,您可以从技术上同时访问多个用户数据。
不可能像JavaScript一样在客户端幻灯片登录中获取刷新令牌。
更新:
在请求日历时,您需要提供您希望看到的日历,我们会按照当前购买时指定的日历ID进行购买
calendarId: "primary",
这是当前经过身份验证的用户的主日历。如果您有权访问其他日历,则需要将此代码更改为其他用户的日历ID。您可以在Google日历网站中找到日历ID,也可以执行calendarlist.list来显示当前用户可以访问哪些日历。