我有我认为是谷歌日历的简单要求,但对于我的生活,我无法在网上找到任何东西来帮助我实现它。
我想做的就是在网页上显示我的 Google 帐户(不是最终用户)中的一个日历,然后允许他们创建活动/预订。不确定这是否可以完成,但对我来说似乎是一个非常简单的功能。
从我的在线阅读看来,我不需要使用 Oauth2,而是创建一个日历服务并以这种方式连接。这是我目前拥有的代码,它可以毫无怨言地创建服务,但我不知道如何从中呈现日历,并且似乎无法在任何地方找到任何体面的示例。
private const string SERVICE_ACCOUNT_EMAIL = "DetailsRemoved";
private const string SERVICE_ACCOUNT_PKCS12_FILE_PATH = @"DetailsRemoved";
protected void Page_Load(object sender, EventArgs e)
{
CalendarService x = BuildService();
//Render the Calendar somehow
}
/// <summary>
/// Build a Calendar service object authorized with the service account.
/// </summary>
/// <returns>Calendar service object.</returns>
static CalendarService BuildService()
{
X509Certificate2 certificate =
new X509Certificate2(HttpContext.Current.Server.MapPath(SERVICE_ACCOUNT_PKCS12_FILE_PATH),
"notasecret",
X509KeyStorageFlags.Exportable);
var provider = new AssertionFlowClient(GoogleAuthenticationServer.Description, certificate)
{
ServiceAccountId = SERVICE_ACCOUNT_EMAIL,
Scope = CalendarService.Scopes.Calendar.GetStringValue(),
};
var auth = new OAuth2Authenticator<AssertionFlowClient>(provider, AssertionFlowClient.GetState);
return new CalendarService(new BaseClientService.Initializer()
{
Authenticator = auth
});
}
任何帮助,将不胜感激
谢谢