我正在努力让youtube.search.list
与Node.js
合作。看起来我可以使用YouTube API
v.3.0成功进行身份验证,但是当我运行youtube.search.list
时,我得到空的结果集。
代码中有一个愚蠢的错误,或者我在YouTube API
上发出了错误的请求。
以下是代码:
var google = require('googleapis');
var youtubeV3 = google.youtube({ version: 'v3', auth: 'MY_API_KEY' });
var request = youtubeV3.search.list({
part: 'snippet',
type: 'video',
q: 'Cat',
maxResults: 50,
order: 'date',
safeSearch: 'moderate',
videoEmbeddable: true
});
// console.log('Here we start search');
for (var i in request.items) {
var item = request.items[i];
console.log('Title: ', item.id.videoId, item.snippet.title);
}
为了检查我从API返回的内容,我运行console.log(request)
并获取空对象。
答案 0 :(得分:2)
稍微使用API,我想出了以下工作代码:
var google = require('googleapis'),
youtubeV3 = google.youtube( { version: 'v3', auth: 'API_KEY' } );
var request = youtubeV3.search.list({
part: 'snippet',
type: 'video',
q: 'Cat',
maxResults: 50,
order: 'date',
safeSearch: 'moderate',
videoEmbeddable: true
}, (err,response) => {
// your code here
});
尽管文档here告诉一个人使用执行,the repository of google apis on Github告诉一个人使用该节点回调模式,结果证明是有效的。