Есть ли способ предоставить моему приложению nodejs доступ к моему календарю Google? - PullRequest
1 голос
/ 30 марта 2020

, поэтому у меня есть приложение nodejs, которое отправляет приглашения на событие в календаре Google некоторым людям, сейчас я использую свою учетную запись gmail и OAuth Playground, чтобы получить временный токен доступа, и он работает, но токен доступа просто доступен в течение нескольких минут, и каждый раз, когда мне нужно вручную обновить sh токен доступа и дать доступ к календарю моей учетной записи Google, и это проблема, теперь я хочу сделать что-то динамическое c, не вмешиваясь в процесс. Это приложение размещено в wix. какие-либо предложения ? Спасибо

Ответы [ 2 ]

1 голос
/ 30 марта 2020

Чтобы получить доступ к API календаря, выполните Быстрый старт

. Приведенный код создает маркер refre sh , который автоматически сгенерирует для вас новый токен доступа. всякий раз, когда истекает срок действия старого.

Будьте осторожны с ненужным использованием учетных записей служб, особенно для добавления приглашенных в событие календаря - в настоящее время проблем с этой функцией.

1 голос
/ 30 марта 2020

Если вы разрешаете им доступ только к своему календарю, которым вы владеете, и можете контролировать учетную запись службы.

let google = require('googleapis');
let privatekey = require("./privatekey.json");
  Now let’s use the private key to configure a JWT auth client and authenticate our request.
    // configure a JWT auth client
    let jwtClient = new google.auth.JWT(
           privatekey.client_email,
           null,
           privatekey.private_key,
           ['https://www.googleapis.com/auth/calendar']);
    //authenticate request
    jwtClient.authorize(function (err, tokens) {
     if (err) {
       console.log(err);
       return;
     } else {
       console.log("Successfully connected!");
     }
    });

Создайте учетные данные учетной записи службы в консоли разработчика Google. затем возьмите адрес электронной почты учетной записи службы и поделитесь календарем с ним на веб-сайте календаря Google. Остальной код, который у вас есть, должен быть таким же, просто замените раздел auth этим

...