使用目录API获取资源日历

问题描述 投票:1回答:1

我确实尝试过,但是我自己无法弄清楚如何使用Directory API检索资源日历的数据。

我想要的:

  • [通过使用具有域范围委派的服务帐户来检索我公司的资源日历的数据

我有什么:

  • 具有域范围委派的服务帐户(+凭据.json)]]

  • 我公司资源日历的日历ID

  • 我是非管理员用户,据我所知该服务帐户必须模拟用户。我是否需要成为管理员用户才能管理和查看资源日历的数据并与服务帐户共享?我使用jwtClient进行授权,我不知道是否必须使用Directory API,Google Calendar API或同时使用两者才能使其正常工作。

我尝试先使用Google Calendar API,但没有用,现在我想我必须使用Directory API获取资源日历。到目前为止,这就是我所拥有的:

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: '[email protected]',
        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));
    }
});

任何帮助将不胜感激。预先感谢!

我确实尝试过,但是我自己无法弄清楚如何使用Directory API检索资源日历的数据。我想要的是:通过使用...

node.js google-calendar-api google-admin-sdk
1个回答
0
投票

我是非管理员用户,据我所知该服务帐户必须模拟用户。我是否需要成为管理员用户才能管理和查看资源日历的数据并与服务帐户共享?

© www.soinside.com 2019 - 2024. All rights reserved.