4

У меня есть программа node.js, которую я пытаюсь работать с модулем googleapis (https://github.com/google/google-api-nodejs-client) версии 0.2.5-alpha.Mirror API и Node.JS

Я могу совершать вызовы с использованием необработанного HTTP без проблем, поэтому я знаю, что я белый для API, я правильно аутентифицирую и авторизую, и исправляются правильные области и все. Если я использую тот же access_token, чтобы вставить в шкалу времени, я получаю ошибку в обратном вызове. Я также открываю API-интерфейс плюс, и звонки с использованием этого API работают нормально.

фрагмент кода, чтобы открыть API, который, кажется, работает без проблем:

var client; 
googleapis 
    .discover('plus', 'v1') 
    .discover('mirror', 'v1') 
    .execute(function(err,data){ 
    console.log(err); 
    client = data; 
    }); 

фрагмент кода, чтобы сделать вызов:

 
    client.mirror.timeline.insert({ 
    text: "test 1 " 
    }).withAuthClient(user.auth).execute(function(err,result,res){ 
     console.log('++ start ++'); 
     console.log('+err ', err); 
     console.log('+result', result); 
     //console.log('+res ', res); 
     console.log('++ end ++'); 
    }); 

Что регистрируется во время обратного вызова:

 
++ start ++ 
+err { code: 400, 
    message: 'Required', 
    data: [ { domain: 'global', reason: 'required', message: 'Required' } ] } 
+result undefined 
++ end ++ 

Любое указание на то, что такое «Обязательно», как его предоставить или как дальше отлаживать ошибки, такие как это? не

ответ

5

UPDATE: свойство resource больше не требуется, так что исходный код должен работать только вместо предлагаемого решения.

Поскольку node.js клиентская библиотека основана на клиентской библиотеки JavaScript, вам необходимо установить тело запроса в свойстве «ресурс»:

client.mirror.timeline.insert({resource: { 
    text: "test 1 " 
    }}).withAuthClient(user.auth).execute(function(err,result,res){ 
     console.log('++ start ++'); 
     console.log('+err ', err); 
     console.log('+result', result); 
     //console.log('+res ', res); 
     console.log('++ end ++'); 
    }); 
+0

отлично работает. Благодаря! Есть ли ссылка, что требуется свойство ресурса или какие другие свойства доступны? – Prisoner

+1

Это было верно для 0.2.12-альфа и раньше. Начиная с последнего модуля googleapis node.js (v 0.2.13-alpha), свойство ресурса не требуется. Ваш исходный код сработал бы. –

Смежные вопросы