Синхронизация углов - приложение .NET с Google Calendar API - PullRequest
0 голосов
/ 08 ноября 2019

Я хочу интегрировать API Google Calenar в свое угловое приложение .NET, используя OAuth2, чтобы каждый пользователь мог видеть свой собственный календарь при каждом входе в систему.

Я хотел бы сохранить сгенерированный код в базе данных. .

Я начал это делать и в угловую сторону я добавил эту функцию, которая может подключиться к вашему календарю 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

Любая помощь? и спасибо

1 Ответ

1 голос
/ 08 ноября 2019

Я предполагаю, что вы сохраняете маркер обновления пользователя в своей базе данных вместе со своим собственным пользовательским идентификатором для этого пользователя.

Чтобы понять это, ознакомьтесь с OAuth2 .

В основном:

  • вы отправите маркер обновления в Google вместе с идентификатором вашего приложения.
  • Google получит это, проверьте, пытается ли пользователь, которого вы пытаетесьАвторизация (обновление токена) все еще позволяет вашему приложению (идентификатору приложения) продолжить работу.
    • В этом случае Google ответит токеном доступа, срок действия которого истекает.
    • Если Google считает, что ваш токен обновления и / или идентификатор приложения недействительны, ваш запрос будет отклонен. Когда это произойдет, вам придется снова пройти все этапы «подключения к календарю».

Пока токен доступа действителен, вы можете использовать его в своем приложении дляполучить данные, не запрашивая у пользователя дополнительную информацию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...