我一直在努力使用 Google Calendar Api (V3),但我现在可以创建事件并列出给定时间跨度的事件。我在 C# 中这样做是为了创建一个桌面应用程序。
我有两个不同的谷歌帐户,我希望能够分别发布到每个日历。使用下面的代码(对于第一个 google 帐户),我可以连接并发布到一个日历,但是当我在不同的表单上使用相同的代码和来自第二个 google 帐户的 .json 文件时,它会返回错误当我尝试列出该特定日历中的事件时未找到 [404]。它能够显示日历列表,但列出的日历来自第一个 google 帐户。我已经在我的网络浏览器中注销了我的谷歌账户,但我的程序一直在使用第一个谷歌账户。
PS:对于第二个 google 帐户,我有一个不同名称的 .json 文件,在使用第二个 google 帐户登录时从开发者网站下载。第二个谷歌帐户的应用名称也有不同的命名。
public async Task<int> testZZquery()
{
UserCredential credential;
using (var stream = new FileStream("CMgcal_client_secrets.json", FileMode.Open, FileAccess.Read))
{
credential = await GoogleWebAuthorizationBroker.AuthorizeAsync(
GoogleClientSecrets.Load(stream).Secrets,
new[] { CalendarService.Scope.Calendar },
"user", CancellationToken.None);
}
// Create the service.
var service = new CalendarService(new BaseClientService.Initializer()
{
HttpClientInitializer = credential,
ApplicationName = "mygcal",
});