java - 获取用户拥有的 YouTube channel 列表

标签 java spring youtube-api

我正在尝试获取用户使用 YouTube Data API (V3) 创建的 channel ID 列表。我该怎么做呢?我有授权后获得的用户访问 token 。

我想获取每个 channel 的订阅者数量,我已经通过传递我知道的 channel ID 之一来获取该 channel 的订阅者数量,但这是出于测试目的。

我正在使用 org.springframework.web.client 中的 RestTemplate 来发出请求。

RestTemplate restTemplate = new RestTemplate();
MultiValueMap<String, String> parameters = new LinkedMultiValueMap<>();

//what parameters to set?

URIBuilder uriBuilder = URIBuilder.fromUri("https://www.googleapis.com/youtube/v3/channels");

我尝试按照 this 的建议实现解决方案所以回答但甚至无法提出一个好的请求。

最佳答案

看来您已经有了正确的方法,即使用 https://www.googleapis.com/youtube/v3/channels。如果您只想获取经过身份验证的用户的 channel ID,可以使用参数 part=idmine=true

要使用访问 token ,您可以按照以下方法之一 here - 在 HTTP 请求 header 中包含 Authorization: Bearer ACCESS_TOKEN,或者作为另一个查询参数 access_token=ACCESS_TOKEN

示例请求:

https://www.googleapis.com/youtube/v3/channels?
    part=id&
    mine=true&
    access_token=ACCESS_TOKEN

示例响应,在 items/id 字段中包含 channel ID:

{
 "kind": "youtube#channelListResponse",
 "etag": ETAG,
 "pageInfo": {
  "totalResults": 1,
  "resultsPerPage": 1
 },
 "items": [
  {
   "kind": "youtube#channel",
   "etag": ETAG,
   "id": "UCBR8-60-B28hp2BmDPdntcQ"
  }
 ]
}

关于如何使用 Spring 框架发出这些请求,我没有太多指导 - 如果您仍然遇到问题,我建议验证它们是否可以在 Spring 之外工作。您可以在 channels#list 上找到更多信息页面,并测试生成和使用 OAuth 访问 token ,请尝试 OAuth 2.0 Playground .

关于java - 获取用户拥有的 YouTube channel 列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37983921/

相关文章:

java - 尽管仔细检查了我的逻辑,但我的 if 条件返回 true

java - 生成n位或更多位的随机数

javascript - 点击播放 Youtube 视频

java - 如何在不修改旧数组或创建新数组的情况下向数组添加元素?

java - 在 IDE 中编程时如何停止使用鼠标?

java - Maven安装命令报错

java - org.xml.sax.SAXParseException;找不到元素'beans :beans 的声明

java - 使用 Spring 根据用户输入在运行时 Autowiring 属性

youtube-api - 有没有办法获取历史 youtube 订阅者信息?

android - 由于 Youtube API 问题,应用已从 Google Play 下架