【问题标题】:YouTube API getVideoId is nullYouTube API getVideoId 为空
【发布时间】:2011-12-25 05:47:16
【问题描述】:

我使用基于浏览器的上传方法上传了一些视频。视频上传得很好,但是我无法获取这个最近上传的视频的 ID。 这是我所做的:

$vidEntry = new Zend_Gdata_YouTube_VideoEntry();
...
...
$tokenHandlerUrl = 'http://gdata.youtube.com/action/GetUploadToken';
$tokenArray = $yt->getFormUploadToken($vidEntry, $tokenHandlerUrl);
$tokenValue = $tokenArray['token'];
$postUrl = $tokenArray['url'];
...
...
posting using cURL...

还有有问题的代码:

$state = $vidEntry->getVideoState();
if($state) {
    $video_id = $vidEntry->getVideoId();
} else {
    die("Error");
}

这里的 $stateNULL。有什么问题?

根据手册顺便说一句:

上传视频文件后,用户被重定向到nexturl 在您的表格中指定。如果上传成功,YouTube 会追加 URL 的 id 和 status 参数,如下例所示:

但我仍然无法获取它们(也许我在考虑错误的 URL?)。

【问题讨论】:

    标签: php youtube youtube-api gdata-api


    【解决方案1】:

    在基于浏览器的上传中,您的代码在视频尚未上传时工作。所以此时无法知道 VIDEO_ID。

    为了获取 VIDEO_ID,您必须查看着陆页上传入的 GET 参数中的 Id 参数。

    着陆页必须作为表单操作链接中的“?nexturl=”参数提供给 youtube。

    【讨论】:

      【解决方案2】:

      解决了。我只是做了一个错误的重定向。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-11-08
        • 2013-07-07
        • 1970-01-01
        • 2013-10-04
        • 1970-01-01
        • 2012-09-17
        • 2016-06-02
        相关资源
        最近更新 更多