【问题标题】:Google Photos API - authenticationGoogle Photos API - 身份验证
【发布时间】:2019-01-27 07:57:40
【问题描述】:

我正在尝试从 Google 相册中获取我的共享相册列表。 我在 Google Developers Console 中找到了启用 Photos API。

HTTP 获取: https://content-photoslibrary.googleapis.com/v1/sharedAlbums?key=AIzaSyCkXXXXXXXXXXXXXZiOSe9IiyM8E

结果:

{ "error": { "code": 401, "message": "Request is missing required authentication credential. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.", "status": "UNAUTHENTICATED" } } 1

开发者控制台中的配置:

拜托,我做错了什么?谢谢。

【问题讨论】:

    标签: api google-photos


    【解决方案1】:

    您需要配置 OAUth 2.0 凭据(客户端 ID 和机密),而不是 API 密钥。更多详细信息在此处的开发者文档中:https://developers.google.com/photos/library/guides/get-started#request-id

    Google 照片库 API 代表用户行事,这就是您需要通过 OAuth 2.0 进行身份验证的原因。作为此请求的一部分,您还需要指定用户接受的范围,请参阅此页面了解更多详细信息:https://developers.google.com/photos/library/guides/authentication-authorization

    【讨论】:

      【解决方案2】:

      Google API 需要一个访问令牌来确保用户有权访问该功能。访问令牌就像 cookie 一样,应该与请求一起发送。

      通常您需要进行大量设置才能使用您自己的代码获取访问令牌。但是有一个 client library 可以帮助您通过小设置访问 Google API。

      访问令牌也有生命周期,因此如果您不使用the library,则需要手动刷新令牌。

      【讨论】:

        【解决方案3】:

        我一直在做一个 python 项目来备份谷歌照片库和相册信息。您可能可以对其进行修改以完全按照您的意愿行事。它可以正常工作,但目前无法区分共享相册和私人相册。

        https://github.com/gilesknap/gphotos-sync

        特别是,请参阅https://github.com/gilesknap/gphotos-sync/blob/master/gphotos/authorize.py,它处理任何 Google 服务的身份验证和授权(它还处理存储令牌和刷新令牌)。

        【讨论】:

          猜你喜欢
          • 2019-08-25
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-02-24
          • 2015-01-24
          • 2017-07-02
          相关资源
          最近更新 更多