使用Google Calendar API同步angular-.NET应用程序

问题描述 投票:0回答:1

[我想使用OAuth2将Google Calenar API集成到我的.NET应用程序中,以便每个用户登录时都能看到自己的日历。

我想将生成的代码保存到数据库中。

我开始这样做,并且在角度方面添加了此功能,该功能可以连接到您的Google日历并获取您的私人代码,然后将其发送到背面:

  handleAuthClick() {
    let self = this;
    gapi.auth2.getAuthInstance().grantOfflineAccess()
      .then(value => {
        const optionsParams = {
          params: new HttpParams()
            .set('code', value.code)
        };
        self.http.get("http://localhost:59933/api/UserCode", optionsParams)
          .subscribe(data => {
            console.log(data);
          })
      });
  }

现在,我希望在用户登录应用程序时使用此代码来检索日历数据(全天候需要将其他时间连接到Google日历)

我从这里开始,但是这里没有关于OAuth2的内容:

https://developers.google.com/calendar/quickstart/dotnet

有帮助吗?谢谢

angular asp.net-core google-calendar-api
1个回答
0
投票
我假设您将用户的刷新令牌以及该用户的自定义ID保存在数据库中。

要了解这一点,请熟悉OAuth2

基本:

    您将刷新令牌与您的应用程序ID一起发送给Google。
  • Google会收到此消息,请检查您要授权的用户(刷新令牌)是否仍允许您的应用程序(应用程序ID)继续运行。
    • 如果是这种情况,Google将以带有到期日期的访问令牌答复。
  • 如果Google认为您的刷新令牌和/或您的应用程序ID无效,它将拒绝您的请求。发生这种情况时,您将不得不再次执行整个“连接到日历”步骤。
  • 虽然访问令牌有效,但是您可以在应用程序中使用它来获取数据,而无需提示用户提供更多信息。
  • © www.soinside.com 2019 - 2024. All rights reserved.