检索Youtube评论与全屏/yt



我使用https://github.com/Fullscreen/yt与Youtube API进行交互,但经过几个小时的测试,我无法从视频中获取评论。

我怀疑原因是我请求了错误的权限,但我在谷歌文档中找不到任何关于请求范围的明确内容。从OAuth操场出现,是https://www.googleapis.com/auth/youtube.force-ssl但是,我仍然不能使它工作。

这是请求新令牌的全方位提供程序行:

  provider :google_oauth2, key, secret, {:scope => 'http://gdata.youtube.com,email,profile,youtube,youtube.force-ssl'}

我是这样检索注释的:

Yt.configure do |config|
    config.client_id = key
    config.client_secret = secret
end
youtube_client = Yt::Account.new access_token: 'yadayada'
video = Yt::Video.new id: 'foobar', auth: youtube_client
puts video.comments

我得到的是:

Yt::Errors::Forbidden: A request to YouTube API was considered forbidden by the server:
{"error"=>{"errors"=>[{"domain"=>"global", "reason"=>"insufficientPermissions", "message"=>"Insufficient Permission"}], "code"=>403, "message"=>"Insufficient Permission"}}

我也在通道上尝试了几乎相同的方法,同样的问题,这就是为什么我猜我的access_token有问题。

有人这样做了吗?我做错了什么?例子吗?

根据您分享的链接页面上的文档,我无法看到这行代码:

account = Yt::Account.new authorization_code: '4/Ja60jJ7_Kw0', redirect_uri: redirect_uri

每个授权你的应用程序的用户将被重定向到redirect_uri,带有一个额外的代码参数,看起来像4/Ja60jJ7_Kw0。只需将代码传递给以下方法来验证和初始化帐户:

如果不能尝试使用环境变量进行配置

作为上述方法的另一种选择,你可以用变量配置你的应用。设置以下环境变量:

export YT_CLIENT_ID="1234567890.apps.googleusercontent.com"
export YT_CLIENT_SECRET="1234567890"
export YT_API_KEY="123456789012345678901234567890"

相当于用初始化器配置你的应用:

Yt.configure do |config|
  config.client_id = '1234567890.apps.googleusercontent.com'
  config.client_secret = '1234567890'
  config.api_key = '123456789012345678901234567890'
end

所以使用你喜欢的方法。如果在两个位置都设置了一个变量,那么Yt。配置优先。

希望这有帮助!!

相关内容

  • 没有找到相关文章

最新更新