【发布时间】:2015-08-24 06:41:51
【问题描述】:
您好,我无法从 Vimeo 中的私有访问视频中获取私有元数据,如标题、持续时间、图像等。任何人都可以帮我找到解决方案吗?
我在我的帐户中以私密模式上传了一个视频。我也无法获取元数据详细信息。
我正在使用 PHP 来获取详细信息。
【问题讨论】:
您好,我无法从 Vimeo 中的私有访问视频中获取私有元数据,如标题、持续时间、图像等。任何人都可以帮我找到解决方案吗?
我在我的帐户中以私密模式上传了一个视频。我也无法获取元数据详细信息。
我正在使用 PHP 来获取详细信息。
【问题讨论】:
这非常类似于:Get URL/Embed code to private Vimeo videos programatically
很遗憾那里的答案没有被标记为答案,这是将两个问题联系在一起的必要步骤,所以我将在这里重新发布。
这对于每个 API 应用程序都是必需的。我们需要知道谁在使用我们的系统,以及必要时如何联系他们。
https://developer.vimeo.com/api/authentication 有一般文档,但您可能会使用“单用户应用程序”工作流程。 “通过应用程序页面上的 UI 生成访问令牌,然后将其硬编码到您的应用程序中”,这是一个崇高的标题。此访问令牌将代表注册应用程序的用户与 API 交互。
有许多不同的 API 调用来获取视频信息。你可以在https://developer.vimeo.com/api/endpoints找到这些。 /me/videos 将显示所有经过身份验证的用户视频,/videos/{video_id} 将显示单个视频。
一个额外的说明,如果你使用 PHP,你应该使用官方的 Vimeo PHP 库:https://github.com/vimeo/vimeo.php
【讨论】:
访问https://github.com/leandrocfe/PHPVimeoAPI_List_Private_Video
列出来自 Vimeo 的私人视频
访问 video.php 和 添加 vimeo_video_id 获取参数。前任: 本地主机/vimeo/video.php?id=123123123
<?php
//utf-8
header('Content-Type: text/html; charset=utf-8');
//lib vimeo
use Vimeo\Vimeo;
//métodos de inicialização
$config = require(__DIR__ . '/init.php');
//vimeo video id
@$id = $_GET["id"];
//isset get
if(isset($id)){
// vimeo class send config.json paramns
$lib = new Vimeo($config['client_id'], $config['client_secret'], $config['access_token']);
//get data vimeo video
$me = $lib->request("/me/videos/$id");
//iframe vídeo
$embed = $me["body"]["embed"]["html"];
//edit video size
$default_size = 'width="'.$me["body"]["width"].'" height="'.$me["body"]["height"].'"';
$new_size = 'width="420" height="220"';
$embed = str_replace($default_size, $new_size, $embed);
//autoplay
$embed = str_replace('player_id=0', 'player_id=0&autoplay=1', $embed);
}else{
echo("Not find get id video");
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Vimeo Vídeo</title>
</head>
<body>
<div><?php echo $embed ?></div>
<div>
<p><b>Name: </b><?php print_r($me["body"]["name"]); ?></p>
<p><b>Description: </b><?php print_r($me["body"]["description"]); ?></p>
<p><b>Link: </b><?php print_r($me["body"]["link"]); ?></p>
<p><b>Likes: </b><?php print_r($me["body"]["embed"]["buttons"]["like"]); ?></p>
<p><b>Data Created: </b><?php print_r($me["body"]["created_time"]); ?></p>
<p><b>Data Modified: </b><?php print_r($me["body"]["modified_time"]); ?></p>
<p><b>Images: </b>
<?php print_r($me["body"]["pictures"]["uri"]); ?> |
<?php print_r($me["body"]["pictures"]["sizes"][0]["link"]); ?> |
<?php print_r($me["body"]["pictures"]["sizes"][1]["link"]); ?> |
<?php print_r($me["body"]["pictures"]["sizes"][2]["link"]); ?> |
<?php print_r($me["body"]["pictures"]["sizes"][3]["link"]); ?> |
<?php print_r($me["body"]["pictures"]["sizes"][4]["link"]); ?> |
<?php print_r($me["body"]["pictures"]["sizes"][5]["link"]); ?>
</p>
</div>
<div><?php //print_r($me); //use for show all options ?></div>
</body>
</html>
【讨论】: