以下示例展示了如何使用 YouTube Data API (v3) 执行与订阅相关的函数。
检索频道的订阅
调用 subscriptions.list
方法可检索特定频道的订阅。您可以通过以下两种方式识别渠道:
-
如需检索当前已通过身份验证的用户的订阅,请将
mine
参数的值设置为true
。请注意,使用mine
参数的请求必须使用 OAuth 2.0 进行授权。https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.subscriptions.list? part=snippet,contentDetails &mine=true
-
如需检索任何其他频道的订阅,请将
channelId
参数的值设置为相应频道的唯一 YouTube 频道 ID。以下示例会检索 YouTube 上 TED 频道订阅的频道列表。https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.subscriptions.list? part=snippet,contentDetails &channelId=UCAuUUnT6oDeKwE6v1NGQxug
注意:如果指定频道未公开其订阅,并且请求未获得频道所有者的授权,则该 API 会返回
403 (Forbidden)
HTTP 响应代码。
如需查看代码示例,请参阅 subscriptions.list
方法的文档。
添加订阅
调用 subscriptions.insert
方法以添加频道订阅。此请求必须使用 OAuth 2.0 授权。请求正文是一个 subscription
资源,用于设置以下值:
snippet.resourceId.kind
包含值youtube#channel
。snippet.resourceId.channelId
属性用于标识要订阅的频道。媒体资源值是唯一的 YouTube 频道 ID。您可以通过多种方式获取频道 ID,包括调用channels.list
方法或检索频道搜索结果。
以下 API 请求会让您订阅 YouTube 上的 TED 频道:
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.subscriptions.insert? part=snippet
请求正文如下:
{ "snippet": { "resourceId": { "kind": "youtube#channel", "videoId": "UCAuUUnT6oDeKwE6v1NGQxug" } } }
如需查看代码示例,请参阅 subscriptions.insert
方法的文档。
删除订阅
此示例会删除订阅。此请求必须使用 OAuth 2.0 授权。此示例包含两个步骤:
-
第 1 步:检索经过身份验证的用户频道的订阅
调用
subscriptions.list
方法以检索订阅列表。上面用于检索频道订阅的示例介绍了如何发出此请求。调用该 API 的应用可以处理 API 响应,以使用每个订阅的 ID 作为键来显示订阅列表。在响应中,每个项的
id
属性都标识了用于唯一标识相应订阅的订阅 ID。您将在下一步中使用该值从列表中移除某个项。 -
第 2 步:删除订阅
调用
subscriptions.delete
方法可删除订阅。将请求的id
参数设置为要移除的订阅的订阅 ID。此请求必须使用 OAuth 2.0 授权。如需在 APIs Explorer 中完成请求,您需要设置
id
属性的值。https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.subscriptions.delete? id=SUBSCRIPTION_ID
如需查看代码示例,请参阅 subscriptions.delete
方法的文档。
检索已获授权用户频道的订阅者列表
如需检索订阅当前已通过身份验证的用户频道的频道列表,请调用 subscriptions.list
方法并将 mySubscribers
参数的值设置为 true
。必须使用 OAuth 2.0 授权请求。
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.subscriptions.list? part=snippet,contentDetails &mySubscribers=true