Google日历api v3授权和c#认证

本文关键字:认证 授权 v3 日历 api Google | 更新日期: 2023-09-27 17:53:55

大家好,我找不到谷歌日历api v3授权和身份验证的工作代码(c#) ?看起来所有的帖子都太旧了,库做了改变,有人有工作代码吗?我向谷歌开发者注册了项目,并获得了使用证书。谢谢。

Google日历api v3授权和c#认证

这是一个静态方法来获取用于执行所有请求的CalendarService对象,您需要将从Google Developers Dashboard下载的JSON文件存储在项目中的某个地方,然后在下面的代码中引用它。

你第一次运行这个,你将被重定向到一个谷歌登录屏幕在你的网络浏览器,将提示给访问你的日历在那里。确认后,下面将创建一个凭证文件,该文件将存储在用户计算机上指定的位置(例如应用程序的安装目录)。从那时起,存储的凭证文件将被使用,您不需要再次登录。

public static CalendarService GetService()
    {
        var Scopes = new string[] { CalendarService.Scope.Calendar };
        UserCredential credential;
        string filePath = Path.Combine("*YOUR DOWNLOADED JSON FILE LOCATION HERE*");
        using (var stream = new FileStream(filePath, FileMode.Open, FileAccess.Read))
        {
            string credPath = "*WHERE YOU WILL STORE YOUR CREDENTIALS FILE*";
            credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
                GoogleClientSecrets.Load(stream).Secrets,
                Scopes,
                "user",
                CancellationToken.None,
                new FileDataStore(credPath, true)).Result;
        }
        // Create Google Calendar API service.
        var service = new CalendarService(new BaseClientService.Initializer()
        {
            HttpClientInitializer = credential,
            ApplicationName = "*YOUR APPLICATION NAME HERE*",
        });
        return service;
    }