Как отключить проверку перенаправления URL на googleapi? - PullRequest
1 голос
/ 09 апреля 2019

Я следую этому потоку в этой инструкции: https://developers.google.com/identity/sign-in/web/server-side-flow для аутентификации через Google.

На сервере BackEnd я использую lib: google-auth-lib

const { OAuth2Client } = require('google-auth-library');

async function login (code) {
   const auth = new OAuth2Client(
      googleConfig.clientId,
      googleConfig.clientSecret,
      googleConfig.redirect
   );

   const data = await auth.getToken(code);
}

Но сейчас я должен обработать URL перенаправления, чтобы он соответствовал конфигурации в проекте console.google.

Я думаю, что проверка перенаправления URL не нужна для этого случая.

Так, как я могу отключить проверку перенаправления URL или любую идею?

1 Ответ

1 голос
/ 09 апреля 2019

Проверка валидации URI является частью процесса авторизации Google.Вы не можете отключить его в веб-проектах.Сервер авторизации должен знать, куда вернуть код авторизации.Если вы работаете с веб-приложением, вам всегда нужно определить URI перенаправления.

С другой стороны, если вы используете приложение на стороне сервера или установленное приложение, вам не следует использовать клиент веб-браузера, вы должны использовать собственный клиент, который не будет использовать URI перенаправления.

Этот образец узла быстрого запуска был разработан для запуска в качестве консольного приложения для доступа к API Google Drive.Это может помочь вам.

/**
 * Create an OAuth2 client with the given credentials, and then execute the
 * given callback function.
 * @param {Object} credentials The authorization client credentials.
 * @param {function} callback The callback to call with the authorized client.
 */
function authorize(credentials, callback) {
  const {client_secret, client_id, redirect_uris} = credentials.installed;
  const oAuth2Client = new google.auth.OAuth2(
      client_id, client_secret, redirect_uris[0]);

  // Check if we have previously stored a token.
  fs.readFile(TOKEN_PATH, (err, token) => {
    if (err) return getAccessToken(oAuth2Client, callback);
    oAuth2Client.setCredentials(JSON.parse(token));
    callback(oAuth2Client);
  });
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...