首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用新API获取Vimeo视频缩略图

如何使用新API获取Vimeo视频缩略图
EN

Stack Overflow用户
提问于 2019-07-15 18:14:34
回答 3查看 7.2K关注 0票数 3

我正在尝试使用PHP输出嵌入到我的wordpress站点上的Vimeo视频的图像缩略图。Vimeo视频具有域名级别的隐私。

看起来Vimeo已经更新了他们的API,就像我几年前在这里发布的其他答案中的建议一样,但这些都不起作用。我已经看过了他们的新API,但似乎无法理解它。

具体地说,我已经尝试了其中的一些变体:

代码语言:javascript
复制
<?php
$imgid = 6271487;
$hash = unserialize(file_get_contents("http://vimeo.com/api/v2/video/$imgid.php"));
echo $hash[0]['thumbnail_medium'];  

这总是返回一种形式的致命错误。

任何关于实现这一目标的最佳方法的帮助都将不胜感激!

EN

回答 3

Stack Overflow用户

发布于 2019-07-15 23:10:51

有几件事:首先,路径为/api/v2/video/的API已被弃用,取而代之的是几年前发布的“新”API。

其次:旧的API只支持扩展.xml.json,以这两种格式返回响应;.php不被旧的API支持。

要获取视频的缩略图,您需要使用the new API,或者如果视频是公开且可嵌入的,则使用oEmbed。使用Vimeo PHP库,获取视频元数据的请求将如下所示:

代码语言:javascript
复制
$videoId = '6271487';
$response = $client->request('/videos/'+$videoId+'/pictures', array(), 'GET');
print_r($response);

oEmbed请求将如下所示(表示为curl,请注意Vimeo的oEmbed实现将只返回jsonxml):

代码语言:javascript
复制
curl -X GET 'https://vimeo.com/api/oembed.json?url=https://vimeo.com/6271487'

祝好运!

票数 4
EN

Stack Overflow用户

发布于 2019-07-17 17:56:03

为了完整,我联系了Vimeo,他们提供了以下内容,似乎工作得很好:

代码语言:javascript
复制
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://vimeo.com/api/oembed.json?url=https://vimeo.com/VIDEO_ID",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_POSTFIELDS => "",
  CURLOPT_HTTPHEADER => array(
    "Referer: REFERER_URL"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
票数 3
EN

Stack Overflow用户

发布于 2019-07-15 22:55:22

您需要在API请求的头部中使用访问令牌。您还需要使用正确的API urls。

从这里开始:https://developer.vimeo.com/api/guides/start

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57037642

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档