PHP 中的 YouTube 频道视频列表与 YouTube v3 API 不起作用



我正在尝试使用 YouTube v3 API 获取和显示我的 YouTube 频道视频。我已经做了一些初步的事情,比如在谷歌开发者控制台中启用YouTube v3 API。我在互联网上的某个地方得到了这个代码,并按照指示做了所有事情,但我的视频不会显示。

<?php 
//Get videos from channel by YouTube Data API
$API_key    = 'xxxxxxxx-xxxxxxxx'; //my API key
$channelID  = 'UCxxxxxxxx'; //my channel ID
$maxResults = 10;
$video_list = json_decode(file_get_contents('https://www.googleapis.com/youtube/v3/search?order=date&part=snippet&channelId='.$channelID.'&maxResults='.$maxResults.'&key='.$API_key.''));
foreach ($video_list->items as $item) {
    //Embed video
    if (isset($item->id->videoId)) {
        echo '<div class="">
                <iframe width="280" height="150" src="https://www.youtube.com/embed/'.$item->id->videoId.'" frameborder="0" allowfullscreen></iframe>
                <h2>'. $item->snippet->title .'</h2>
            </div>';
    } 
} ?>
<?php //echo count($video_list); ?>

$video_list数组返回空。

我做错了什么?

我用我的密钥和一个示例频道运行了你的代码,视频显示得很好。

将完成的 URL 复制到浏览器并检查结果以验证 API 是否返回了预期的内容。

我认为您正在使用一个非常古老的示例代码。谷歌有一个名为谷歌API PHP Client的PHP库,它将负责身份验证等。尝试使用它。

您还将在他们的文档页面中获得示例 PHP 代码:

  • 搜索:https://developers.google.com/youtube/v3/docs/search/list

  • 视频:https://developers.google.com/youtube/v3/docs/videos/list

相关内容

  • 没有找到相关文章

最新更新