Как получить refresh_token из кода ответа, возвращаемого grantOfflineAccess - PullRequest
0 голосов
/ 22 февраля 2019

Я поражен вопросом invalid_grant.Я ссылаюсь на gapi doc и реализую поток как:

var authorisationRequestData =
  {
    'client_id': clientId,
    'scope': scopes,
    'immediate': immediate,
    prompt: 'consent',
    access_type: 'offline',
  include_granted_scope: true,
  }

  const authInstance = gapi.auth2.getAuthInstance();
  authInstance.grantOfflineAccess(authorisationRequestData)
    .then((res) => {
      console.log(gapi.auth.getToken());
      var all_token = JSON.stringify(gapi.auth.getToken());
      console.log("Token =" + all_token);
      console.log(res);
      console.log(res.code);

    }).catch(error => {
      console.log(error);
    });

. Я получаю токен доступа и код отклика из приведенной выше реализации и могу создать событие календаря для пользователя.Но через 1 час он выдает ошибку вроде «Ошибка: недопустимый_код, код: 400»

1 Ответ

0 голосов
/ 22 февраля 2019

Код, который вы получаете из ответа, является одноразовым кодом, который ваш сервер должен обменять на Access Token и Refresh Token.Пожалуйста, обратитесь к this .

Не рекомендуется хранить refresh_token в клиентском приложении, поскольку оно не защищено.Если у вас просто есть клиентское приложение, я бы рекомендовал перейти по ссылке .

Надеюсь, это поможет.

...