3

你好 !

我见过很多类似的问题,但无法弄清楚为什么它们都没有给出明确的答案。

我正在尝试使用 google-api-client gem 连接到 youtube 数据 api,以从 youtube 视频链接中检索缩略图。我认为我不需要处理(对我来说晦涩难懂的)oAuth 身份验证。

  • 第一步:我使用 google api 控制台创建项目,授权 Youtube Data API。在“API 访问”选项卡中,我选择“创建客户端 ID...”和“服务帐户”选项。

它给了我一个客户 ID、电子邮件地址和公钥指纹。

  • 第二:我使用 google-api-client gem 创建了我的 ruby​​ 脚本。我只是复制/粘贴文档中的示例:

    需要“谷歌/api_client”

    客户端 = Google::APIClient.new

从我的客户端对象中,我想我可以直接调用 client.execute() 来获取包含所有视频信息的 atom 提要。但我只是知道如何去做。

也许我还必须获得 oAuth 授权?获得令牌?

我错过了什么?

非常感谢您的贡献。

4

1 回答 1

7

这并不难,我发现了如何做到这一点。

在这种情况下,您不需要处理 oAuth 身份验证。您将需要生成一个服务器 API 密钥并在每个请求中发送它。

以下代码段将帮助检索有关 API 提供的视频的所有信息。

require 'google/api_client'
require 'json'

client = Google::APIClient.new

youtube = client.discovered_api('youtube', 'v3')

client.authorization = nil

result = client.execute :key => "<YOUR_SERVER_API_KEY>", :api_method => youtube.videos.list, :parameters => {:id => '<YOUR_VIDEO_ID>', :part => 'snippet'}

result = JSON.parse(result.data.to_json)
于 2013-04-12T08:27:19.270 回答