这是一个自我Q& A。
我经常四处寻找有关使用Vimeo API的帮助,并且总是发现入门级示例和文档很难遵循。所以我把这个Q& A写成了那些需要它的人的帮助。所以这是一个问题:
如何使用Vimeo PHP“高级API”获取所有Vimeo视频?
关键是“我的”视频。这对于构建他们想要与他们自己的Vimeo帐户同步的站点的人来说非常有用。 Vimeo示例都旨在允许第三方用户根据需要进行身份验证。这是一次性静态验证示例。
答案 0 :(得分:6)
// Include the Vimeo API file. Download from here: https://github.com/vimeo/vimeo-php-lib
require_once('vimeo.php');
/*
* Helper Function to Handle Vimeo Authentication
*/
function authenticate_vimeo(){
// Settings below.
// You'll need to set these to your account's as show here: // Get from https://developer.vimeo.com/apps/new
$vimeo_id = 'user12345'; // Get from https://vimeo.com/settings, must be in the form of user123456
$consumer_key = '1234567';
$consumer_secret = '1234567';
$token = '1234567';
$token_secret = '1234567';
// Do an authentication call
$vimeo = new phpVimeo($consumer_key, $consumer_secret);
$vimeo->setToken($token, $token_secret);
$vimeo->user_id = $vimeo_id;
return $vimeo;
}
/*
* This is how you make a call to the Vimeo API
*/
// Authenticate Vimeo
$vimeo = authenticate_vimeo();
// Try to access the API
try {
$args = array(
'full_response' => true,
'user_id' => $vimeo->user_id, // This limits the request to the one user's videos
'per_page' => 50, // 50 is the max per page, use "page" parameter for more pages
);
$results = $vimeo->call('vimeo.videos.getUploaded', $args); // List of methods here: https://developer.vimeo.com/apis/advanced/methods
}
catch (VimeoAPIException $e) {
$error = "Encountered an API error -- code {$e->getCode()} - {$e->getMessage()}";
}
// Do something with error or results
if( isset($error) ) {
print_r($error);
} else {
print_r($results); // This will be a gigantic PHP object of all videos and meta data
}
答案 1 :(得分:1)
Visite 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>