首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用YouTube API获取带有电子邮件或用户名的用户YouTube播放列表。

使用YouTube API获取带有电子邮件或用户名的用户YouTube播放列表。
EN

Stack Overflow用户
提问于 2016-05-03 15:56:50
回答 1查看 1.5K关注 0票数 0

我正在使用最新的YouTube API (我相信是v3)。这是我从https://developers.google.com/youtube/v3/docs/获得的文档。

通过在javascript中进行调用,我能够获得一个带有通道ID的用户YouTube播放列表:

代码语言:javascript
运行
复制
function getPlaylists(channelId) {
    return $.get("https://www.googleapis.com/youtube/v3/playlists", { part: 'snippet', channelId: channelId, key: key });
}

当我有播放列表时,我能够得到每个播放列表的PlaylistID属性。使用PlaylistID,我可以使用javascript代码获取播放列表的所有视频:

代码语言:javascript
运行
复制
function getPlaylistVideos(playlistId) {
    return $.get('https://www.googleapis.com/youtube/v3/playlistItems', { part: 'snippet', playlistId: playlistId, key: key });
}

我真的不喜欢这样,我不得不让一个用户尝试找到他们的ChannelId来加入他们的播放列表。我希望能够让用户传递他们的电子邮件或用户名来做这件事。这个是可能的吗?不使用YouTube身份验证是可能的吗?如果没有,是否有关于YouTube授权服务使用的良好来源?

EN

回答 1

Stack Overflow用户

发布于 2016-05-04 08:25:27

对于用户名,您可以分三个步骤完成,当然电子邮件需要Oauth2,所以这是不可能的。

步骤1

使用YouTube API v3和资源channel.list

使用此参数获取具有用户名的通道的通道ID:

代码语言:javascript
运行
复制
part: 'snippet'
forUsername: 'GoogleDevelopers'

你得到的是:

代码语言:javascript
运行
复制
"items": [
  {
   "kind": "youtube#channel",
   "etag": "\"kiOs9cZLH2FUp6r6KJ8eyq_LIOk/lVXRA_GH5DhBajCt1cOeuB4TWbw\"",
   "id": "UC_x5XG1OV2P6uZZ5FSM9Ttw",

现在您获得通道UC_x5XG1OV2P6uZZ5FSM9Ttw的ID

步骤2

使用YouTube API v3和资源playlist.list

使用此参数获取频道的所有播放列表ID:

代码语言:javascript
运行
复制
part: 'snippet'
channelId: 'UC_x5XG1OV2P6uZZ5FSM9Ttw'

你会得到所有的播放列表

代码语言:javascript
运行
复制
"items": [
  {
   "kind": "youtube#playlist",
   "etag": "\"kiOs9cZLH2FUp6r6KJ8eyq_LIOk/sxN5XCGvIn_Rnsan74s_A_k16L8\"",
   "id": "PLOU2XLYxmsIKXYR_3iOWnI4h1Do_aa8dn",

现在步骤3

使用YouTube API v3和资源playlist.list

使用此参数将视频输入到频道的playlistID中:

代码语言:javascript
运行
复制
part: 'snippet'
playlistId: 'PLOU2XLYxmsIKXYR_3iOWnI4h1Do_aa8dn'

你会得到所有的播放列表

代码语言:javascript
运行
复制
"items": [
  {
   "kind": "youtube#playlistItem",
   "etag": "\"kiOs9cZLH2FUp6r6KJ8eyq_LIOk/WFwMbOGG8nLHKF8tH1W41WNFJBk\"",
   "id": "UExPVTJYTFl4bXNJS1hZUl8zaU9Xbkk0aDFEb19hYThkbi41NkI0NEY2RDEwNTU3Q0M2",
   "snippet": {
    "publishedAt": "2016-04-18T17:33:55.000Z",
    "channelId": "UC_x5XG1OV2P6uZZ5FSM9Ttw",
    "title": "#Love4Dev - What Magnus Hyttsten loves most about the power of mobile APIs",

你会在播放列表中得到所有的视频;

重要的部分是第一步,用户只需输入通道的用户名,如我的示例:https://www.youtube.com/user/GoogleDevelopers

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37008885

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档