Вход в Google: проверка бэкэнда - PullRequest
0 голосов
/ 11 января 2019

У меня работает приложение Google Sign-in: соответствующий код примерно равен:

var acc = await signInService.signIn();
var auth = await acc.authentication;
var token = auth.idToken;

Это дает мне хороший длинный токен, который я затем передаю своему бэкэнду с HTTP POST (это работает нормально), а затем пытаюсь проверить. У меня есть тот же файл google-services.json в моем флаттере и на внутреннем сервере (это nodejs / restify). Код бэкенда примерно такой:

let creds = require('./google-services.json');
let auth = require('google-auth-library').OAuth2Client;
let client = new auth(creds.client[0].oauth_client[0].client_id);
. . .
let ticket = await client.verifyIdToken({
    idToken: token,
    audience: creds.client[0].oauth_client[0].client_id
});
let payload = ticket.getPayload();

Это последовательно возвращает мою ошибку «Неправильный получатель, аудитория полезной нагрузки! = RequiredAudience».

Я также попытался зарегистрироваться отдельно с помощью консоли GCP и использовать вместо этого эти ключи / client_id, но тот же результат. Где я могу найти правильный client_id, который будет правильно проверять этот токен?

...