【问题标题】:Authenticate youtube account on server在服务器上验证 youtube 帐户
【发布时间】:2017-07-05 00:43:54
【问题描述】:

我创建了一个 Web 应用程序,它将仅显示一个帐户的所有私人视频。

现在我必须验证帐户才能获取列表视频。我看到了两种通过ClientLoginOauth 进行身份验证的方法。其中ClientLogin 已弃用,不知道如何使用Oauth 对服务器上的默认帐户进行身份验证。

我的应用有 client_idclient_secret
我尝试了this example,但没有工作,我不知道$get['code'] 中有什么,以及当使用OAuth 而不是ClientLogin 时,我该如何输入此帐户的usernamepassword

【问题讨论】:

    标签: php google-api google-oauth google-api-php-client youtube-data-api


    【解决方案1】:

    这很简单。

    您可以按照How do I authorise an app (web or installed) without user intervention? (canonical ?) 的步骤获取刷新令牌。在第 8 步,选择 YouTube API 而不是 Drive API。尝试选择最严格的范围,例如。只读。您可以在您的应用程序中嵌入刷新令牌(安全!!!!),然后随时使用它来生成访问令牌。因此,存储的刷新令牌的行为类似于具有受限权限的用户名/密码。

    【讨论】:

      【解决方案2】:

      询问您是否声明客户端登录已关闭,您无法使用登录名和密码访问任何 Google api。您的应用需要经过身份验证

      关于 YouTube API,您需要了解的是它不支持服务帐户。您将不得不使用 Oauth2。我不是 PHP 开发人员,但我以前在 C# 中做过。你想做的事情可能有点棘手。

      首先,正如我所说,您需要使用 Oauth2。我希望这个例子是合理的 up to date 如果不是 Google analytics 的例子,你可能需要对它们进行一些比较。

      您的脚本需要使用 Oauth2 进行一次身份验证。然后通过请求

      $client->setAccessType("offline");

      您将收到一个刷新令牌。然后,您可以随时在服务器上的脚本中使用此刷新令牌来请求新的访问令牌并访问该频道的 YouTube。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-09-26
        • 1970-01-01
        • 2021-04-27
        • 1970-01-01
        • 1970-01-01
        • 2021-01-29
        • 1970-01-01
        相关资源
        最近更新 更多