大家好我无法找到google calendar api v3授权和身份验证的工作代码(C#)?看起来所有帖子都太旧了,库变了,任何人都得到了工作代码?我向谷歌开发者注册了项目并获得了使用证书。感谢。
答案 0 :(得分:0)
以下是获取用于执行所有请求的CalendarService
对象的静态方法,您需要将从Google Developers Dashboard下载的JSON文件存储在项目中的某个位置,然后在代码中引用它下方。
首次运行时,您将被重定向到网络浏览器中的Google登录屏幕,系统会提示您在那里访问您的日历。确认后,下面将创建一个凭证文件,该文件将存储在您在用户计算机上指定的位置(例如您的应用程序的安装目录)。从那时起,将使用存储的凭证文件,您将不再需要重新登录。
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;
}