Php 获取youtube订阅者列表其给定错误为400
我正在尝试使用 但这给了我错误Php 获取youtube订阅者列表其给定错误为400,php,youtube,Php,Youtube,我正在尝试使用 但这给了我错误 { "error": { "errors": [ { "domain": "youtube.parameter", "reason": "incompatibleParameters", "message": "Incompatible parameters specified
{
"error": {
"errors": [
{
"domain": "youtube.parameter",
"reason": "incompatibleParameters",
"message": "Incompatible parameters specified in the request: channelId, mySubscribers",
"locationType": "parameter",
"location": ""
}
],
"code": 400,
"message": "Incompatible parameters specified in the request: channelId, mySubscribers"
}
}
1) 登录到Google帐户并转到。你可能必须开始一个新项目
2) 导航到API&auth并转到公共API访问->创建新密钥
3) 选择您需要的选项(我使用的是“浏览器应用程序”),这将为您提供一个API密钥
4) 在YouTube中导航到您的频道并查看URL。频道ID在这里:
5) 使用API密钥和通道ID获取此查询的结果:
各州:
此参数只能在正确授权的请求中使用
了解查询YouTube API有两种方法很重要:
&key=
将其附加到请求中,就像您所做的那样mySubscriptions
或mine
参数,则必须使用后一个过程。仅使用API密钥时,这些参数不可用,因为API密钥未绑定到用户/通道
既然你写了你想得到你的“自己的频道订户名单”,我假设你感兴趣的是已经订阅你的人的名单,而不是你已经订阅的人的名单。对于这种情况,实际上不能使用
订阅.list
端点的channelId
参数,因为文档中说明:
channelId参数指定YouTube频道ID。API将仅返回该频道的订阅
(实际上,这意味着你订阅的所有频道,而这不是你想要的。)
为了检索已订阅您的频道的用户列表,您需要使用OAuth 2.0令牌授权您的请求(请参阅上面链接的指南)
还请注意,正如您不会通过YouTube网站看到这些订阅者一样,如果用户决定在其隐私设置中隐藏其订阅,它们也不会显示在API中。我没有专门尝试过这一点,但我怀疑您是否删除了这些订阅者
&key={APPKEY}&channelId={channel ID}
根据您的要求,使用
&access_token={access token}
你会得到你想要的。有时,如果您使用的是API资源管理器,它会误导您,告诉您使用密钥进行身份验证,而您真正需要的是使用在OAuth 2.0流中从您试图从中获取数据的帐户捕获的访问令牌 错误消息解释了它自己,你确定你使用的是正确的值吗?@Mr.Phoenix我从中检查的这个参数还说,
channelId
和mySubscribers
都是“过滤器(精确指定以下参数之一)”,请建议其他方法,我怎样才能得到我的频道id的订户列表---你必须使用v2,为什么你给我负面的??你能试试我的代码@paolose吗?请对你的答案发表评论。你的答案完全错了。您在这里概述的不是OAuth工作流。另外,您描述的方法只会生成频道的订阅者数量,而不是列表。因此,如果您非常了解,请告诉我如何显示用户订阅者的所有列表。。我在等你
**You Can Get Your Api key From Here !!**
**You Can Get Your ChanelId From Here **
&key={APPKEY}&channelId={channel ID}
&access_token={access token}