实现:播放列表

以下示例展示了如何使用 YouTube Data API (v3) 来执行与播放列表和播放列表项相关的功能。

检索当前用户的播放列表

调用 playlists.list 方法,以检索当前通过身份验证的用户的播放列表。在请求中,将 mine 参数的值设置为 true。请注意,使用 OAuth 2.0 的请求必须使用 mine 参数。

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlists.list?
        part=snippet,contentDetails
        &mine=true

检索用户的播放列表

此示例检索由特定频道创建的播放列表。该示例包含两个步骤:

检索特定播放列表的相关信息

如需检索一个或多个特定播放列表的相关信息,请调用 playlists.list 方法,然后将 id 参数设置为用于标识所需资源的 YouTube 播放列表 ID 的英文逗号分隔列表。此功能的一个常见用例是请求检索与一组搜索结果中返回的一组播放列表相关的其他信息。例如,您可能需要检索每个播放列表中的商品数量。

以下请求调用 playlists.list 方法,以检索两个播放列表中与查询字词“GoogleDevelopers”相匹配的项数。此信息位于 playlist 资源的 contentDetails.itemCount 属性中,因此该请求将 part 参数值设为 contentDetails

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlists.list?
        part=contentDetails
        &id=PLOU2XLYxmsIIM9h1Ybw2DuRw6o2fkNMeR,PLyYlLs02rgBYRWBzYpoHz7m2SE8mEZ68w

添加播放列表

此示例调用 playlists.insert 方法,在经过身份验证的用户的频道中创建私享播放列表。使用此方法的任何 API 请求都必须使用 OAuth 2.0 进行授权。

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlists.insert?
        part=snippet,status

指向 API Explorer 的链接也设置了一个参数,用于指定 API 请求的正文。请求正文包含 playlist 资源,该资源定义了播放列表的标题、说明和隐私权状态等信息。在此示例中,请求正文为:

{
  "snippet": {
    "title": "New playlist",
    "description": "New playlist description"
  },
  "status": {
    "privacyStatus": "private"
  }
}

相关代码示例:JavaJavaScript.NETPHPPython

更新播放列表

此示例将播放列表的隐私设置从 private 更新为 public。该示例包含两个步骤:

  • 第 1 步:检索播放列表 ID

    调用 playlist.list 方法,以检索当前通过身份验证的用户的频道中的播放列表。上面的检索当前用户的播放列表请求示例演示了此请求。调用 API 的应用可处理 API 响应以显示播放列表列表,并将每个播放列表的 ID 用作键。

  • 第 2 步:更新播放列表

    调用 playlists.update 方法可修改特定播放列表。此方法需要有效的 OAuth 2.0 授权令牌。

    请求正文必须包含 playlist 资源的 snippet 部分,因为调用此方法时必须使用 snippet.title 属性。此外,如果要更新的播放列表资源指定了 snippet.descriptionsnippet.tags 属性的值,则必须在更新请求中重新指定这些值,否则这些值将会被删除。

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlists.update?
            part=snippet,status

    如以上添加播放列表的示例所示,API Explorer 的链接会设置一个参数,用于指定 API 请求的正文。请求正文包含 playlist 资源,该资源定义了播放列表的标题、说明和隐私权状态等信息。此示例中使用了以下请求正文:

    {
      "id": "PLAYLIST_ID",
      "snippet": {
        "title": "New playlist",
        "description": "New playlist description"
      },
      "status": {
        "privacyStatus": "public"
      }
    }

    注意:如果您是在 API Explorer 中测试此查询,则需要在资源正文中替换一个有效的播放列表 ID。要获取播放列表 ID,我们建议您先运行上面所示的添加播放列表请求。从 API 响应中提取播放列表 ID,并对要更新的播放列表使用该值。此示例中使用的播放列表标题和说明与此示例中使用的播放列表标题和说明相同。

添加播放列表项

此示例将内容添加到播放列表。此请求必须使用 OAuth 2.0 授权。此示例包含两个步骤:

  • 第 1 步:检索相应的播放列表 ID

    调用 playlist.list 方法,以检索当前通过身份验证的用户的频道中的播放列表。上面的检索当前用户的播放列表请求示例演示了此请求。调用 API 的应用可处理 API 响应以显示播放列表列表,并将每个播放列表的 ID 用作键。

  • 第 2 步:将视频添加到播放列表

    调用 playlistItems.insert 方法可将视频添加到播放列表。此请求必须使用 OAuth 2.0 授权。请求正文是至少指定以下值的 playlistItem 资源:

    下面的 API 请求会将视频添加到播放列表。请求正文如下:

    {
      "snippet": {
        "playlistId": "PLAYLIST_ID",
        "resourceId": {
          "kind": "youtube#video",
          "videoId": "VIDEO_ID"
        }
      }
    }

    如需在 API Explorer 中完成请求,您需要设置 snippet.playlistIdsnippet.resourceId.videoId 属性的值。

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlistItems.insert?
            part=snippet

    注意playlistItems.insert 方法的文档指出了您可以在添加播放列表项时设置的其他属性值。

更新播放列表项

此示例更新了播放列表项,使其成为播放列表中的第一项。此请求必须使用 OAuth 2.0 授权。此示例包含三个步骤:

  • 第 1 步:检索相应的播放列表 ID

    调用 playlist.list 方法,以检索当前通过身份验证的用户的频道中的播放列表。上面的检索当前用户的播放列表请求示例演示了此请求。调用 API 的应用可处理 API 响应以显示播放列表列表,并将每个播放列表的 ID 用作键。

  • 第 2 步:检索所选播放列表中的内容

    调用 playlistItems.list 方法,以检索所选播放列表中的视频列表。将 playlistId 参数的值设为您在第 1 步中获取的播放列表 ID。

    API 响应中的每个资源都包含一个 id 属性,该属性用于标识播放列表项的唯一标识。在下一步中,您将使用该值从列表中移除商品。

  • 第 3 步:更新所选的播放列表项目

    调用 playlistItems.update 方法可更改视频在播放列表中的位置。将 part 参数值设为 snippet。请求正文必须是至少设置以下值的 playlistItem 资源:

    • id 属性设置为第 2 步获取的播放列表项 ID。
    • snippet.playlistId 属性设置为第 1 步获取的播放列表 ID。
    • snippet.resourceId.kind 属性设置为 youtube#video
    • snippet.resourceId.videoId 属性设置为可唯一标识播放列表中包含的视频的视频 ID。
    • snippet.position 属性设置为 0 或您希望显示此项的任意位置(使用从 0 开始的索引)。

    下面的 API 请求更新了播放列表项,使其成为播放列表中的第一个项。请求正文如下:

    {
      "id": "PLAYLIST_ITEM_ID",
      "snippet": {
        "playlistId": "PLAYLIST_ID",
        "resourceId": {
          "kind": "youtube#video",
          "videoId": "VIDEO_ID"
        },
        "position": 0
      }
    }

    如需在 API Explorer 中完成请求,您需要为 idsnippet.playlistIdsnippet.resourceId.videoId 属性设置值。

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlistItems.update?
            part=snippet

移除播放列表项

以下示例从播放列表中删除了一个视频。此请求必须使用 OAuth 2.0 授权。此示例包含三个步骤。前两个步骤与上面的示例中更新播放列表项的步骤相同。

完成上述步骤后,调用 playlistItems.delete 方法即可从播放列表中移除视频。将请求的 id 参数设为您要移除的内容的播放列表项 ID。此请求必须使用 OAuth 2.0 授权。

请注意,用来标识播放列表中视频的播放列表项 ID 不同于用来唯一标识视频的 YouTube 视频 ID。播放列表项 ID 会将视频标识为特定播放列表中的项。

如需在 API Explorer 中完成请求,您需要设置 id 属性的值。

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlistItems.delete?
        id=PLAYLIST_ITEM_ID

移除播放列表

此示例删除了一个播放列表。该示例包含两个步骤:

  • 第 1 步:检索播放列表 ID

    调用 playlist.list 方法,以检索当前通过身份验证的用户的频道中的播放列表。上面的检索当前用户的播放列表请求示例演示了此请求。调用 API 的应用可处理 API 响应以显示播放列表列表,并将每个播放列表的 ID 用作键。

  • 第 2 步:删除播放列表

    调用 playlists.delete 方法可删除特定播放列表。在该请求中,id 参数用于指定要删除的播放列表的播放列表 ID。此方法需要有效的 OAuth 2.0 授权令牌。如果您在 API Explorer 中测试此查询,则需要将 id 参数值替换为有效的播放列表 ID。

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlists.delete?
            id=PLAYLIST_ID

    注意:如果您是在 API Explorer 中测试此查询,则需要将 id 参数值替换为有效的播放列表 ID。要获取播放列表 ID,我们建议您先运行上面所示的添加播放列表请求。从 API 响应中提取播放列表 ID,并对要删除的播放列表使用该值。