Ошибка 500 backendError с Gmail API и Google API Node Client

Я пытаюсь использовать новыйGmail API сКлиент Google API Node, Я создал новый проект из консоли разработчика, настроил новый идентификатор клиента «Учетная запись службы» и включил доступ к API.

В качестве доказательства концепции я просто пытаюсь перечислить темы в моем почтовом ящике. Когда я включаю OAuth 2.0 для переключенияAPI проводник и введите мой адрес электронной почты, запрос успешно выполняется, и я вижу ответ JSON с данными.

Теперь я пытаюсь сделать то же самое в Node:

var googleapis = require('googleapis');

var SERVICE_ACCOUNT_EMAIL = '...SNIP...';

// generated by: openssl pkcs12 -in ...SNIP...p12 -out key.pem -nocerts -nodes
var SERVICE_ACCOUNT_KEY_FILE = 'key.pem';
var jwt = new googleapis.auth.JWT(
        SERVICE_ACCOUNT_EMAIL,
        SERVICE_ACCOUNT_KEY_FILE,
        null,
        ['https://www.googleapis.com/auth/gmail.readonly']);

googleapis
    .discover('gmail', 'v1')
    .execute(function(err, client) {

        jwt.authorize(function(err, result) {
            if(err) console.error(err);
            else console.log(result);

            client.gmail.users.threads.list()
                .withAuthClient(jwt)
                .execute(function(err, result) {
                    if(err) console.error(err);
                    else console.log(result);
            });
        });
    });

Сначала я печатаю результатыauthorize() вызов, который выглядит так, как будто он возвращает токен, поэтому я думаю, что все настройки OAuth правильно настроены:

{ access_token: '...SNIP...',
  token_type: 'Bearer',
  expires_in: 1404277946,
  refresh_token: 'jwt-placeholder' }

Затем я пытаюсь использовать API, но получаю ошибку:

{ errors: 
   [ { domain: 'global',
       reason: 'backendError',
       message: 'Backend Error' } ],
  code: 500,
  message: 'Backend Error' }

На данный момент, я не знаю, что еще попробовать. ясчитать OAuth работает правильно, потому что я не получил никаких ошибок аутентификации. Я такжесчитать сам API работает, и с моей учетной записью все в порядке, потому что я могу использовать его через API Explorer. Я не вижу никаких признаков того, что библиотека Node тоже виновата. Короче я понятия не имею в чем проблема. Есть идеи?

Ответы на вопрос(1)

Ваш ответ на вопрос