如何使用API密钥从c# .net的谷歌日历API中检索事件



我可以通过此处给出的代码使用 OAuth 身份验证从谷歌日历 API 检索事件,但如何使用 API 密钥编码获取事件信息。

API 密钥用于公共数据。 对于与日历一起使用的 API 密钥,我认为所述日历必须设置为公开。

var service = new CalendarService(new BaseClientService.Initializer()
        {
         ApiKey = "XXX",
         ApplicationName = "xyz",
        });
var events = service.Events.List("en.danish#holiday@group.v.calendar.google.com").Execute();
foreach (var myEvent in events.Items)
     {
     Console.WriteLine(string.Format("Event: {0} Start: {1} End: {2}", myEvent.Summary, myEvent.Start.DateTime.ToString(), myEvent.End.DateTime.ToString()));
     }

我有一个在这里访问公共日历上事件的示例/教程

我认为您应该考虑查看服务帐户,这将允许您授予服务帐户访问日历的权限,并且您无需通过Oauth2身份验证,我怀疑这是您不想做的事情。

string[] scopes = new string[] {
    CalendarService.Scope.Calendar, // Manage your calendars
    CalendarService.Scope.CalendarReadonly // View your Calendars
 };
 var certificate = new X509Certificate2(keyFilePath, "notasecret", X509KeyStorageFlags.Exportable);
ServiceAccountCredential credential = new ServiceAccountCredential(
    new ServiceAccountCredential.Initializer(serviceAccountEmail) {
        Scopes = scopes
    }.FromCertificate(certificate));

我有一个关于如何在这里使用服务帐户的教程

相关内容

  • 没有找到相关文章

最新更新