我想获取受限视频列表的缩略图网址。
我使用 vimeo 创建了一个应用程序并获得了访问 token 。
我如何使用此访问 token 来访问该方法?当我尝试这个时:
videos = Vimeo::Advanced::Video.new("client_identifier", "client_secret",
:token => "access_token")
videos.get_thumbnail_urls(the_video_id)
我明白了
Vimeo::Advanced::RequestFailed: 401: Permission Denied, explanation: The oauth_token passed was either not valid or has expired.
我的用户没有 vimeo 帐户,所以我看不出让他们使用 vimeo 进行身份验证的意义(或方法)。我想抓取创建该应用程序的同一帐户上传的视频的缩略图。我的理解是我生成的访问 token 应该提供此访问权限。
我错过了什么?
更新:根据已接受的答案,这是对我有用的内容
require 'httparty'
video_id = "123456789" # substitute with the desired video ID
api_url = "https://api.vimeo.com/videos/#{video_id}/"
auth = "Bearer access_token_generated_by_vimeo" # use your access token
r = HTTParty.get api_url, headers: { "Authorization" => auth, "Accept" => "application/vnd.vimeo.*+json;version=3.2" } # make sure to use the proper Accept header as recommended in the API docs
v = JSON.parse(r)
v["pictures"]["sizes"][1]["link"]
最佳答案
Advanced API 是 Vimeo 的旧 API。这已被弃用,许多库仍然只能使用这个旧 API。
幸运的是,新的 API 非常简单,您真的不需要库。特别是如果您只想访问缩略图。
身份验证
在 dev site 上查看单用户与多用户应用程序的文档.由于您的用户没有 vimeo 帐户,您应该按照单个用户帐户的说明进行操作(基本上是对单个访问 token 进行硬编码。您可以在“身份验证”选项卡下的应用程序页面上生成此 token )。
API 请求
新API使用更简洁的身份验证和请求结构。缩略图与所有视频回复一起提供。这包括 https://api.vimeo.com/videos/{video_id} , https://api.vimeo.com/me/videos , https://api.vimeo.com/channels/{channel_id}/videos和更多。
Vimeo 建议您在 header 中包含您的访问 token (授权:bearer {token}),但系统允许您通过 URL (?access_token={token}) 提供它。
最终的请求可能是这样的
GET https://api.vimeo.com/me/videos
Authorization: bearer abcd1234
ruby
不幸的是,我不熟悉 ruby,所以我无法帮助将其转换为 ruby,但可能有一个很棒的 HTTP 库可以帮助您。
关于ruby-on-rails - 使用 vimeo ruby gem 通过访问脚本访问 Vimeo API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26050391/