【问题标题】:Use Youtube API without authentication无需身份验证即可使用 Youtube API
【发布时间】:2017-03-04 18:16:46
【问题描述】:
我正在尝试为 CMS 站点制作一个小部件,我可以在其中在管理页面上对我的用户进行身份验证,然后在下一次 youtube 直播时显示一个计时器,并从我的页面直接链接到它。
我已成功使用youtube.liveBroadcasts.list api 并收到了我的广播列表并将其显示在页面上。但是我希望能够在其他用户访问页面时在页面上显示这个(关于我的频道),而无需登录或使用任何类型的身份验证。
【问题讨论】:
标签:
javascript
oauth-2.0
google-api
youtube-api
pagekit
【解决方案1】:
我认为要使用来自 Youtube API 的请求,需要登录。例如,当您将其粘贴到浏览器中时
LiveBroadcasts.list 浏览器中的 URI 请求
https://www.googleapis.com/youtube/v3/liveBroadcasts
没有登录你会得到一个错误:
"errors": [
{
"domain": "global",
"reason": "required",
"message": "Login Required",
"locationType": "header",
"location": "Authorization",
我认为阅读Implementing OAuth 2.0 Authorization 也会有所帮助。
这些是受支持的 OAuth 流程:
- 服务器端流程支持可安全存储持久信息的 Web 应用程序。
- 客户端流程支持在浏览器中运行的 JavaScript 应用程序。
- 已安装的应用程序流支持安装在设备(例如手机或计算机)上的应用程序。
- 设备流支持输入功能有限的设备,例如游戏机和摄像机。
*服务帐户流支持不访问用户信息的服务器到服务器交互。但是,YouTube 数据 API 不
支持这个流量。由于无法将服务帐户链接到
YouTube 帐户,尝试通过此流程授权请求将
生成 NoLinkedYouTubeAccount 错误。
简而言之,我认为您需要获得授权才能执行此 API 调用。