Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Youtube api 使用YouTube API v3判断频道是否有直播流_Youtube Api - Fatal编程技术网

Youtube api 使用YouTube API v3判断频道是否有直播流

Youtube api 使用YouTube API v3判断频道是否有直播流,youtube-api,Youtube Api,我的YouTube API调用的目标是,给定一个channelId,返回该频道当前是否为直播。这是我目前正在打的电话: https://www.googleapis.com/youtube/v3/search?part=snippet&channelId={CHANNEL_ID}&eventType=live&type=video&key={YOUR_API_KEY} 虽然此调用是功能性的,但在启动实时流的通道和返回流的调用之间存在明显的延迟 在不需要oAuth

我的YouTube API调用的目标是,给定一个channelId,返回该频道当前是否为直播。这是我目前正在打的电话:

https://www.googleapis.com/youtube/v3/search?part=snippet&channelId={CHANNEL_ID}&eventType=live&type=video&key={YOUR_API_KEY}
虽然此调用是功能性的,但在启动实时流的通道和返回流的调用之间存在明显的延迟

在不需要oAuth的YouTube v3 API中有更好的调用吗?我的应用程序的功能是只读的


谢谢

可能很晚了,但还是有人会使用它,我在谷歌api文档中找到了答案:

(滚动至底部,您可以使用他们的现场api进行动态调用)

您必须拨打的电话是:

GET https://www.googleapis.com/youtube/v3/liveBroadcasts?part=id%2Csnippet%2Cstatus&mine=true&broadcastStatus=active&key={YOUR_API_KEY}
(atm,他们的状态字段有问题)。您可以删除筛选器并检查返回的结果是否存在错误

{ "status": { "lifeCycleStatus": "live"}}
根据谷歌文档:

在你开始之前

您需要一个Google帐户来访问Google开发者控制台,请求>API密钥,并注册您的应用程序。 向Google注册您的应用程序,以便它可以提交API请求。 注册应用程序后,选择YouTube数据API作为应用程序使用的>服务之一:

转到开发者控制台并选择您刚刚注册的项目。 在Google开发者控制台中打开API库。如果出现提示,请选择>项目或创建新项目。在API列表中,确保“YouTube数据API v3”的状态为“开”,如果您是YouTube内容合作伙伴,则确保“YouTube>内容ID”API的状态为“开”

调用数据API

API请求必须由拥有>广播YouTube频道的Google帐户授权

您可以检查此链接以生成访问(OAuth 2.0)令牌:


我希望这能有所帮助。

我正在尝试使用它,但我得到了一个401登录所需的错误,有什么想法吗?找到原因了吗?在这篇评论中,YouTube要求OAUTH与API的直播部分交互。这个答案不再有效,因为它使用的是API密钥而不是OAUTH。我不接受这个答案,因为它现在需要OAUTH,而我最初的问题是关于一个不需要OAUTH的请求。它告诉你自己的频道是否有直播。它不允许你查询其他人的频道。如果你正在编写OBS插件,那么这个问题很有用;如果你正在编写一个小部件来通知你跟踪的人上线,那么这个问题就没用了。@Daniel,看起来这个问题和我的问题是重复的。这个答案可能有用!(请求URL的
eventType=live
部分是关键,在2014年我问这个问题时,它可能不存在!)这是否回答了你的问题?