我正在尝试获取用户使用 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=id
和 mine=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/