我在上传视频后尝试使用API检索“thumbnail_url”。 但是,我检索到的“thumbnail_url”始终是此URL“Hhttp://s2.dmcdn.net/KtV-L.jpg”或“Hhttp://s2.dmcdn.net/KtV-L/x240-gK0.jpg” (当我使用oEmbed API时)。
另一方面,当我将URL手动插入浏览器的地址栏(如下面的URL)时,我可以获得我想要的“thumbnail_url”。 Hhttps://api.dailymotion.com/video/VIDEOID字段= thumbnail_url
我的问题是; 是否存在时间滞后或Dailymotion API在上传视频后是否需要更多时间来生成缩略图? 或者,检索我编码错误的缩略图网址的方法是什么?
以下是获取缩略图图片网址的代码。 *作为先决条件,我已经获得了访问令牌,创建了一个视频并发布了。
/////////////// Publish a video ///////////////
$publishVideoAPI = "https://api.dailymotion.com/video/".$responseID;
// Post data
$dataPublish = array(
"title" => $videotitle,
"published" => true,
"channel" => "shortfilms",
"tags" => $tags,
"access_token" => $accesstoken
);
$conn = curl_init();
// Post method
curl_setopt($conn, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($conn, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($conn, CURLOPT_RETURNTRANSFER, true);
curl_setopt($conn, CURLOPT_URL, $publishVideoAPI);
curl_setopt($conn, CURLOPT_POST, true);
curl_setopt($conn, CURLOPT_POSTFIELDS, $dataPublish);
// execute
$resPublish = curl_exec($conn);
echo "publish video<br />";
var_dump($resPublish);
// close
curl_close($conn);
/////////////// Grab a thumbnail image of the video start ///////////////
// API
$thumbnail = "https://api.dailymotion.com/video/".$responseID."?fields=thumbnail_url";
// initialise session
$conn = curl_init();
// Get method
curl_setopt($conn, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($conn, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($conn, CURLOPT_RETURNTRANSFER, true);
curl_setopt($conn, CURLOPT_HEADER, false);
curl_setopt($conn, CURLOPT_URL, $thumbnail);
// execute
$res2 = curl_exec($conn);
echo "thumbnail url<br />";
//var_dump($res2);
echo "<br /><br />";
// close
curl_close($conn);
$thumbnailData = json_decode( $res2 , true );
$thumbnailURL = $thumbnailData["thumbnail_url"];
echo $thumbnailURL;
答案 0 :(得分:0)
我已准备好执行此代码 GET方法此网址:https://api.dailymotion.com/video/'+ videoID +'?fields = id,thumbnail_url,thumbnail_120_url
找不到回应:
{ “ID”: “x2qwonn”, “thumbnail_url”: “http://s2.dmcdn.net/Kra86.jpg”, “thumbnail_120_url”:“http://s2.dmcdn.net/Kra86/x120 -aNB.jpg“}
response = {“id”:“x2qwonn”,“thumbnail_url”:“http://s2.dmcdn.net/Kra86.jpg”,“thumbnail_120_url”:“http://s2.dmcdn.net/Kra86 /x120-aNB.jpg“}
thumbnail = response ['thumbnail_120_url']。replace(“\”,“”)
获得结果
答案 1 :(得分:0)
感谢您的回复。 我想出来了,现在正确上传了缩略图。 在您测试时,此代码是正确的。 我上传的图像总是与Dailymotion提供的图像相同的原因是视频状态是“处理”#34;。 所以我把循环以10秒的间隔检查状态,只有当状态转到&#34;已发布&#34;时,尝试抓取缩略图。