所以我有一个nodejs应用程序,它向某些人发送谷歌日历中的事件邀请,现在我正在使用我的gmail帐户和OAuth Playground来获取临时访问 token ,它可以工作,但访问 token 只是可用的几分钟后,每次我需要手动刷新访问 token 并授予对我的谷歌帐户日历的访问权限,这就是问题所在,现在我想在不干扰该过程的情况下使某些内容动态化。 该应用程序托管在 wix 中。 有什么建议 ? 谢谢
最佳答案
如果您只允许他们访问您拥有和控制的日历,那么您可以使用服务帐户。
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 开发者控制台中创建服务帐户凭据。然后获取服务帐户电子邮件地址并通过谷歌日历网站与其共享日历。您拥有的其余代码应该是相同的,只需用此替换 auth 部分即可。
关于node.js - 有没有办法授予我的nodejs应用程序访问我的谷歌日历的权限?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60929631/