Я попытался получить события из API календаря Google в Node.js, но я не смог понять, как работает OAuth2.Как я могу получить значение от API календаря Google для Node.js
Я подготовил обратный вызов в маршрутизатор, чтобы получить код и он работал хорошо:
router.get('/oauth2callback', function(req, res) {
// store code into database with user id.
});
и неправдоподобные события от пользователя:
user.findById(req.session.user_id)
.then(function (data) {
auth.setCredentials(tokens);
user.getCalendars(req.session.user_id)
.then(function (data) {
var promises = [];
for (var i = 0; i < data.length; i++)
promises.push(createPromise(data[i].cal_id));
promise.all(promises)
.then(function (data) {
res.json(data);
})
.catch(function (err) {
res.json(err);
});
})
.catch(function (err) {
res.json(err);
});
});
function createPromise(calendarId) {
return new promise(function (resolve, reject) {
calendar.events.list({ calendarId : calendarId, key : '{MY_API_KEY}' }, { auth: auth }, function (err, result) {
resolve(result);
});
});
}
Но это показывает открытые календари. Я хочу получать все события, включая частные календари.
Я обнаружил, что можно было бы получить все события, если бы я мог получить Header Header для авторизации. Как я могу его получить?
Какие коды будут необходимы для доступа ко всем событиям из частных календарей?