使用 Google API 的 YouTube 搜索 Node.js

Jak*_*est 1 javascript youtube api node.js

我正在尝试使用 Node.js 中的 Google API 进行 YouTube 搜索。

我将此用作某种教程:

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});
Run Code Online (Sandbox Code Playgroud)

当我调用它时,我收到以下消息:

Error: Daily limit for Unauthenticated Used Exceeded.
Run Code Online (Sandbox Code Playgroud)

现在,这显然是因为我没有使用我的 API 密钥。但是,我找不到任何可以向您展示 API 密钥如何用于 Node.js 的资源。

我发现的任何东西都告诉我做这样的事情:

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});
Run Code Online (Sandbox Code Playgroud)

其次是我的“youtube.search.list ...”。

这种方法的问题是我知道从哪里得到:

  • CLIENT_ID
  • CLIENT_SECRET
  • REDIRECT_URL

我在网上的任何地方都找不到这些。我试图只遵循 Javascript 教程,因为 Node 显然使用 Javascript,尽管它总是需要 oAuth2 ... 这需要上述三件事。

任何帮助/提示?

dev*_*svd 5

您应该在 auth 参数中输入 api 密钥。根据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)
    }
  });
Run Code Online (Sandbox Code Playgroud)

谢谢