Получить текущих пользователей: Google Real Time API с NodeJS & gtoken: "Неверные учетные данные"
Я хотел бы использовать сервер NodeJS для получения текущих пользователей на моем веб-сайте из Google Analytic с использованием API отчетности в реальном времени:
До сих пор я пытаюсь сделать это через HTTP-запрос с запросом и gtoken. GetToken-Part работает. Я получаю токен. Но HTTP-запрос не работает. Я получаю ошибку "Недействительные учетные данные" с кодом 401.
У кого-нибудь есть идеи, что делать? Возможно, это совершенно неправильный подход к получению этих данных.
var received_token;
var url = "https://www.googleapis.com/analytics/v3/data/realtime";
var paramsObject = { ids:"ga:123456789"};
const gtoken = new GoogleToken({
keyFile: 'pathToServiceAccountJSONKeyFile:',
scope: ['https://www.googleapis.com/auth/analytics.readonly']
});
gtoken.getToken(function(err, token) {
if (err) {
console.log(err);
return;
}
received_token = token;
console.log(token);
request({
url: url,
qs: paramsObject,
headers: {
'Authorization': received_token
}
}, function(err, response, body) {
if(err) { console.log(err); return; }
// console.log(response);
console.log(body);
});
1 ответ
Решение
Я нашел ошибку:-)
В заголовке авторизации отсутствовал "Носитель", теперь он работает как шарм, и я получаю данные от Google Real Time API.
headers: {
'Authorization': "Bearer " +received_token
}