Не може да се упълномощи чрез съществуващ маркер за достъп с Google API node.js SDK

Първо малко предистория; Имам базирано на PHP приложение, което обработва потока на Google OAuth и съхранява получения маркер за достъп в база данни. Мога да използвам този токен за достъп напълно добре в друг PHP скрипт, така че не мисля, че токенът е изтекъл.

Проблемът идва, когато се опитам да използвам токена за достъп в скрипт node.js. Винаги получавам тази грешка от API на Google.

{ [Грешка: Невалидни идентификационни данни] код: недефиниран, грешки: [ { домейн: 'global', причина: 'authError', съобщение: 'Невалидни идентификационни данни', locationType: 'header', местоположение: 'Authorization' } ] }

Кодът node.js, който използвам за справка, е както следва;

var CLIENT_ID = 'CLIENT_ID';
var CLIENT_SECRET = 'CLIENT_SECRET';
var REDIRECT_URL = 'REDIRECT_URL';

var oauth2Client = new OAuth2Client(CLIENT_ID, CLIENT_SECRET, REDIRECT_URL);

oauth2Client.setCredentials({
  access_token: 'ACCESS_TOKEN'
});

var analytics = google.analytics('v3');

analytics.management.accounts.list({
    auth : oauth2Client
}, function(err, resp) {
   console.log(err);
   console.log(resp);
});

Опитах да кодирам твърдо стойността на access_token в тестов скрипт, но все пак резултатът е същият.

Всякакви предложения са добре дошли!


person Simon Thompson    schedule 21.05.2015    source източник
comment
Когато имам проблем с достъпа до API в Node.js, опитвам се да използвам някои библиотеки с обвивка, само за да съм сигурен, че нещо работи. Давам ви два скрипта, които може да ви помогнат github.com/sfarthin/ga-analytics github.com/ncb000gt/node-googleanalytics   -  person Dejan Toteff    schedule 21.05.2015


Отговори (1)


След като се разрових в кода за PHP и Node.js API libs, намерих своя отговор.

PHP API клиентът автоматично проверява дали токенът е невалиден и след това го подновява, без да ви казва (от това, което виждам). Моят съхранен токен беше невалиден и затова просто трябва да го опресня ръчно в скрипта Node.js.

person Simon Thompson    schedule 23.05.2015