通过 API 访问 Google 照片的长期令牌?

Long lived token for accessing Google Photos via API?

我们有一个要求,希望将我们的服务与 Google Photos 集成,从而使用户可以从我们网站内的 Google Photos 中选择图像。到目前为止,我的理解是,为了让图像在我们这边可供用户选择,他必须通过 OAuth 明确批准 UI(如果我错了请纠正我)。

他批准后,我们​​会得到refresh token,可以生成access token供我们使用。

我的问题如下:

是否可以让用户只执行一次 OAuth UI 批准操作,然后我们可以使用该令牌而无需再次打扰用户批准?

这些代币的存活时间是什么时候?是否有可能获得不会过期的令牌?因为查看 Facebook API,短期令牌在 2 小时后过期,长期令牌在 2 个月后过期。

基本上我们的用例如下:

我们让用户将 Google 照片连接到我们的网站,他可以将这些照片用于多个用例。为了让我们渲染完整的照片,我们需要通过 id 引用该图像并调用 Google Photos API 下载图像并在我们的网站上渲染它。我考虑的另一个选择是 - 存储我们最初在用户进行 OAuth 手动批准时需要的图像的 baseUrl,因此之后不需要批准,因为我们的服务只是后端服务,并且服务到服务通信。

提前致谢并致以最诚挚的问候

你是对的,你需要使用 Oauth2 来请求访问用户数据。这会给你一个刷新令牌。

大部分刷新令牌不会过期。只要用户不直接通过他们的 Google 帐户删除您的访问权限,并且只要您每六个月至少使用一次刷新令牌,您就可以继续使用。但是,您的代码应该能够处理无效的刷新令牌,然后在用户下次访问时询问用户。