0

我一直在尝试找到一个获取用户订阅列表的示例,但没有成功。虽然我尝试通过https://www.googleapis.com/youtube/v3/subscriptions使用 mine=true 和 part=snippet,id 的 HTTP GET 方法,但它似乎总是返回 Invalid Credentials 错误。我已经尝试使用来自 Google Cloud Console 的必要标头(我相信),但找不到要使用的授权令牌。虽然这可能不是我正在寻找的方法。

我认为 PHP 前端使用起来会更有意义,但我根本不知道从哪里开始,因为我找不到有效的示例。我打算让服务器获取用户订阅列表(通过用户在 YouTube 上登录的帐户)来搜索某个频道订阅——但我似乎连第一个都无法获得部分使用在某些文档中提到但由于布局更改而不存在的所有这些授权凭据。一个例子会对我有很大帮助,因为我已经坚持这个看似简单的任务好几个小时了。也许 API 的 v2 使用起来会更简单,但我已经尝试了这两个版本,现在我的想法令人难以置信。

4

1 回答 1

1

一个使用 PHP 和 Google 的 API 的惰性示例:

$subList = $youtube->subscriptions->list(array('part'=>'id,snippet','mine'=>'true', 'maxResults'=>'50'));
// Store channel ids into array. items -> snippet -> resourceId -> channelId
foreach($subList['items'] as $item) {
    $subArray[] = $item['snippet']['resourceId']['channelId'];
}
// If there are more pages, go to next page, pageToken = nextPageToken
while ($subList['nextPageToken']) {
    $nextPage = $subList['nextPageToken'];
    $subList = $youtube->subscriptions->list(array('part'=>'id,snippet','pageToken'=>$nextPage,'mine'=>'true','maxResults'=>'50'));
    // Store channel ids into array.
    foreach($subList['items'] as $item) {
        $subArray[] = $item['snippet']['resourceId']['channelId'];
    }
}
于 2014-04-14T18:09:09.193 回答