0

我正在使用以下代码来检索视频 ID、标题、缩略图、持续时间和标签。

$dailymotion = "https://api.dailymotion.com/video/xreczc?fields=title,duration,thumbnail_url,id,tags";
$curl = curl_init($dailymotion);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$return = curl_exec($curl);
curl_close($curl);
$results = json_decode($return, true);
print_r($results);

但是它返回空/空白页。我在我的本地主机上使用它有什么问题?我可以直接在浏览器中调用https://api.dailymotion.com/video/xreczc?fields=title,duration,thumbnail_url,id,tags并且它可以工作。

有什么帮助或想法吗?

4

3 回答 3

1

请试试这个。

$dailymotion = file_get_contents("https://api.dailymotion.com/video/xreczc?fields=title,duration,thumbnail_url,id,tags");

$results = json_decode($dailymotion, true);

print_r($results);
于 2012-07-13T09:48:35.123 回答
0

您正在尝试通过已知问题的 curl 获取 https 链接。请参阅以下链接以查看它们是否对您的问题有所帮助。

无法使用 cURL 连接到 HTTPS 站点。而是返回 0 长度的内容。我能做些什么?

http://unitstep.net/blog/2009/05/05/using-curl-in-php-to-access-https-ssltls-protected-sites/

问候,

于 2012-06-08T13:56:00.323 回答
0

这段代码似乎可以修复它。

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.dailymotion.com/video/".$id."?fields=id,title,thumbnail_url,tags,duration,embed_url");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_TIMEOUT, 20);
$results = curl_exec($ch);
curl_close($ch);
$results = json_decode($results);
if (!$results || $results->error->code) {
    return false;
} else {
    return $results;
}
于 2012-06-08T17:10:56.570 回答