YouTube使用Google APIsearchNode.js
我正在尝试使用Node中的Google API进行YouTubesearch。
我正在使用这个作为一个教程:
https://github.com/google/google-api-nodejs-client/#google-apis-nodejs-client
我有一些基本的工作 :
var google = require('googleapis'); var YOUTUBE_API_KEY = "--YOUR_API_KEY"; var youtube = google.youtube('v3'); var requests = youtube.search.list({part:'snippet', q: 'cats', maxResults: 10});
当我打电话给我时,我得到这个消息:
Error: Daily limit for Unauthenticated Used Exceeded.
现在,这显然是因为我没有使用我的API密钥。 但是,我找不到任何资源,显示如何使用API密钥的节点。
我发现的任何东西都告诉我要做这样的事情:
var YOUTUBE_CLIENT_KEY = ''; var CLIENT_SECRET = ''; var REDIRECT_URL = '/'; var OAuth2 = google.auth.OAuth2; var oauth2Client = new OAuth2(CLIENT_ID, CLIENT_SECRET, REDIRECT_URL); google.options({auth: oauth2Client});
跟着我的“youtube.search.list …”。
这种方法的问题是我不知道从哪里得到:
- CLIENT_ID
- CLIENT_SECRET
- REDIRECT_URL
我无法在网上find任何这些。 我试图只遵循JavaScript教程,因为节点显然使用Javascript,虽然它总是需要oAuth2 …这需要上述三件事情。
任何帮助/提示?
我花了一段时间才发现这一点,但我是node.js和googleapis的初学者,所以如果有人想扩大这个答案,他们可以。
我相信只要简单地使用简单的API密钥,只是警告你应该只在服务器端保留这个密钥。 永远不要放弃这个钥匙,否则可能会被滥用!
var googleapis = require('googleapis'); googleapis.client.setApiKey('YOUR API KEY');
您应该在auth参数中inputapi密钥。 根据https://github.com/google/google-api-nodejs-client/#google-apis-nodejs-client示例文档,这是正确的方式。
var google = require('googleapis'); var youtube = google.youtube({ version: 'v3', auth: "your-api-key" }); youtube.search.list({ part: 'snippet', q: 'your search query' }, function (err, data) { if (err) { console.error('Error: ' + err); } if (data) { console.log(data) } });
谢谢