Google OAuth-如何检查用户是否已经允许访问我的应用程序
简短描述: 如果用户已经授权我的应用程序OAuth访问他们的google配置文件,我想让他们不用每次登陆我的主页并自动登录时都按“使用google登录”按钮 若用户还并没有授予访问权限,我想向他们展示带有“使用谷歌登录”按钮的登录选项页面 详细描述: 我正在实现Google OAuth流,如此链接所述: 为了清楚起见,所讨论的流程如下:Google OAuth-如何检查用户是否已经允许访问我的应用程序,oauth,oauth-2.0,google-oauth,Oauth,Oauth 2.0,Google Oauth,简短描述: 如果用户已经授权我的应用程序OAuth访问他们的google配置文件,我想让他们不用每次登陆我的主页并自动登录时都按“使用google登录”按钮 若用户还并没有授予访问权限,我想向他们展示带有“使用谷歌登录”按钮的登录选项页面 详细描述: 我正在实现Google OAuth流,如此链接所述: 为了清楚起见,所讨论的流程如下: 向(客户端)用户显示“使用谷歌登录”按钮 用户按下按钮后,将他们重定向到google的OAuth 2.0服务器,在那里他们允许/拒绝我的应用程序访问他们的go
- 无-不提示任何内容,如果无法进行静默登录,则重定向回错误“需要登录”或“需要交互”
- 登录-强制登录提示,即使用户已登录
- 同意-强制同意提示,即使用户过去已提供同意
- 选择_账户-显示账户选择提示
isSignedIn.get()
登录,或者通过检查currentUser.get()
返回的GoogleUser上的hasGrantedScopes()
来检查他们是否已经授权了您的应用程序。如果他们未登录或未向您的应用程序授予作用域,请不要自动执行此过程。@ZanyCadence,感谢您提及此选项。你介意在这里粘贴一个上述GoogleAuth图书馆主页的URL吗?太赫兹。@typhonofdvina你解决这个问题了吗?看起来这就是我要找的。让我仔细阅读文档并验证解决方案。@typhonofdvina你有什么想法吗,我正在尝试得到同样的结果。所以这确实有效,谢谢你@Vilmantas。然而,现在我对OAuth2.0和由google实现的OpenIDConnect之间的关系感到非常困惑。在我使用的示例中,没有提到“post”参数,但它仍然有效。这个参数显然是openid的一部分,而不是oauth2.0。那么为什么它与OAuth2.0一起工作呢?“OpenIDConnect 1.0是OAuth2.0协议之上的一个简单身份层。”而不是相反。我真的很困惑。是的,“OpenID连接”是OAuth2扩展。不要将其与原始OpenID混淆。