我真的试过了,但我自己想不出如何用Directory检索资源日历的数据。
我想要的:
我拥有的:
我是一个非管理员用户,据我所知,服务帐户必须模拟一个用户。我是否需要成为管理员用户来管理和查看资源日历的数据并与服务帐户共享?我使用一个jwtClient来授权,我不知道我是否需要使用Directory、Google,或者两者都能让它工作。
我首先尝试使用Google,但它没有起作用,现在我想我必须使用Directory来获取资源日历。这就是我到目前为止所拥有的:
let express = require('express');
let app = express();
app.set('view engine', 'ejs');
let {google} = require('googleapis');
const calendar = google.calendar('v3');
const port = 3000;
const key = require('./credentials.json');
const jwtClient = new google.auth.JWT(
key.client_email,
null,
key.private_key,
[ 'https://www.googleapis.com/auth/calendar'],
null
);
jwtClient.authorize(function(err, tokens) {
if (err) {
console.log(err);
} else {
console.log("Authorization worked!");
console.log(tokens);
}
});
app.get('/', function(req, res) {
calendar.events.list({
auth: jwtClient,
calendarId: 'xxxx@resourcexxx.com',
timeMin: (new Date()).toISOString(),
maxResults: 5,
singleEvents: true,
orderBy: 'startTime'
}, function(err, resp) {
res.json(resp);
});
});
app.use(express.static('public'));
app.listen(port, function(err){
if (!err) {
console.log("App is running on port", port);
} else {
console.log(JSON.stringify(err));
}
});任何帮助都将不胜感激。提前感谢!
发布于 2019-12-04 15:45:53
我是一个非管理员用户,据我所知,服务帐户必须模拟一个用户。我是否需要成为管理员用户来管理和查看资源日历的数据并与服务帐户共享?
我使用一个jwtClient来授权,我不知道我是否需要使用Directory、Google,或者两者都能让它工作。
我想要的:通过使用具有域范围委托的服务帐户检索公司资源日历的数据。
calendar.events.list检索日历中的事件及其细节,使用您提供的相同代码。参考文献
https://stackoverflow.com/questions/59178024
复制相似问题