Как сделать аутентифицированный GET-запрос с PHP на Vimeo API? - PullRequest
0 голосов
/ 08 октября 2019

Я пытаюсь получить URL mp4 для видео с помощью API-интерфейса Vimeo, и в его официальной документации говорится о том, чтобы сделать запрос GET с аутентификацией для https://api.vimeo.com/videos/[video_id] Ниже приведен код, который я нашел на github, но он ничего не возвращает.

$url = "https://api.vimeo.com/videos/$videoid";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); 
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36"); 
$result = curl_exec($ch);

Может кто-нибудь подсказать, как сделать аутентифицированный GET-запрос к Vimeo API? У меня есть ключи Vimeo и токены доступа. Спасибо.

1 Ответ

1 голос
/ 08 октября 2019

так как вы сказали, что у вас уже есть свой токен, вы можете попробовать этот код с полученным.

Не забудьте также ввести свой идентификатор видео. Чтобы получить идентификатор вашего видео. нажмите на видео, чтобы открыть в браузере. Получите ваш идентификатор видео для вашей учетной записи Vimeo Например, URL браузера

https://vimeo.com/12083674

<?php

//$your_video_id='12083674';

$your_video_id='your video id goes here';
$access_token='your access token goes here';



$clink = "https://api.vimeo.com/videos/$your_video_id";
$curl=curl_init(); 
curl_setopt($curl,CURLOPT_RETURNTRANSFER,true);
curl_setopt($curl,CURLOPT_URL,$clink);
curl_setopt($curl,CURLOPT_CUSTOMREQUEST,'GET');

curl_setopt($curl, CURLOPT_HTTPHEADER, array(                                                                          
    'Content-Type: application/json',                                                                                
    "Authorization: Bearer $access_token")                                                                       
);  

curl_setopt($curl,CURLOPT_SSL_VERIFYPEER,0);
curl_setopt($curl,CURLOPT_SSL_VERIFYHOST,0);

 $out = curl_exec($curl); 

$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);


var_dump($out);


if($status==200){
echo "video found<br>";
}else{
echo "There is an issue. Try Again..<br>";
}
...