使用服务帐户和OAuth访问Google API的限制

问题描述 投票:0回答:1

我当前的应用使用“ 3条腿” OAuth 2.0访问Google API之一。用户在Google同意屏幕上授权该应用,然后该应用代表该用户请求API,并向他显示从API加载的一些精美数据。每天我的应用程序都会从​​该API加载和转换数据,因此当用户下次访问时,他会看到最相关和最实际的数据。

一切从一开始就很好,但是随着时间的流逝,我面临两个问题:1.查询限制。2.令牌寿命。

我的问题专用于第二个问题,我称之为“令牌寿命”。一段时间后,访问令牌将过期,并且当用户返回到该应用程序时,我们的应用程序必须再次向他发送同意屏幕。而且,在访问令牌一直处于过期状态时,我的应用始终无法为用户加载相关数据。

我该如何解决这个问题?如何延续访问/刷新令牌的生命周期?服务帐户会有所帮助吗?服务帐户对每个用户都适用于Google Search Console API,还是该用户应该是我的域内的G Suite用户?从官方documentation hereSearch Console API documentation完全不清楚这些问题。

如果您曾经使用过Google的API,请帮帮我!谢谢

google-api google-oauth google-oauth2 google-search-console
1个回答
0
投票

当您在用户同意的情况下使用OAuth时,无需反复提示用户同意。

[a]如果用例完全在线,并且您希望每次用户访问您的应用时都能够请求令牌,请使用Google Sign In librarysee this documentation for client-side apps

[b]如果您的用例是即使用户不在时也希望能够获得访问令牌,那么您需要请求授权码并存储您的刷新令牌。您的刷新令牌是寿命较长的令牌,可以为exchanged periodically for access tokens

© www.soinside.com 2019 - 2024. All rights reserved.