6

我依靠 Google OAuth 为我正在构建的网站授权用户。在我请求许可时,我已经知道他想使用哪个 Google 帐户(我使用 Google OAuth 作为二级身份验证)。但是,如果用户同时登录多个 Google 帐户,Google 会将用户重定向到 SelectSession 界面。

当用户被定向到https://accounts.google.com/o/oauth2/auth?...他在https://www.google.com/a/SelectSession结束。这是不必要的,因为我已经知道他想使用哪个会话。

有谁知道一种自动选择特定帐户的方法,以便用户无需在https://www.google.com/a/SelectSession手动选择会话?

4

2 回答 2

19

如果您已经知道用户的电子邮件地址,则可以添加查询参数 user_id= 作为提示。如果用户以该帐户登录,它将跳过帐户选择并直接进行审批。

它不保证用户将实际使用该帐户进行授权。这只是一个提示,他们仍有机会切换到不同的帐户。如果您需要确定他们选择了哪个帐户,您需要事后进行验证(例如调用 userinfo 端点。)

于 2012-09-20T19:04:24.647 回答
-1

oAuth 的要点是该应用程序不知道登录/通过,因此您建议的内容不可用。如果您使用的是移动应用程序(您未指定),则凭据将存储在 cookie 中。

您可以删除 cookie 以供用户登录帐户,而不是选择新帐户,但为此您应该考虑从以前的帐户退出。

于 2012-09-20T08:09:28.107 回答