Google Photos API-身份验证

时间:2018-08-21 07:12:39

标签: api google-photos

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

HTTP GET: 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

开发者控制台中的配置:

请,我做错了什么?谢谢。

3 个答案:

答案 0 :(得分:0)

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

Google Photos库API代表用户执行操作,因此您需要通过OAuth 2.0进行身份验证。作为此请求的一部分,您还需要指定一个供用户接受的范围,有关更多详细信息,请参见此页面:https://developers.google.com/photos/library/guides/authentication-authorization

答案 1 :(得分:0)

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

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

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

答案 2 :(得分:0)

我一直在研究python项目,以备份Google照片库和相册信息。您可能可以对其进行修改,以完全满足您的要求。它可以正常运行,但是目前无法区分共享相册和私人相册。

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

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