7

在获取访问代码以使用 Google api (oAuth2) 时,一个参数称为 login_hint,其定义为:

“当您的应用程序知道它正在尝试验证哪个用户时,它可能会将此参数作为提示提供给身份验证服务器。传递此提示将预先填写登录表单上的电子邮件框或选择正确的多重登录会话,从而简化登录流程。”

我发现它没有填写电子邮箱并想知道为什么。url形成如下;

var url:String = 'https://accounts.google.com/o/oauth2/auth?' +
    'scope=https://mail.google.com/&' +
    'redirect_uri=<my_redirect_uri>&' +
    'response_type=code&' +
    'login_hint=abc@gmail.com&' +
    'client_id=<my_client_id>;

该网址可以正常获取登录页面,但未预先填写电子邮件字段。谁能告诉我如何使这项工作?

4

2 回答 2

7

很奇怪,我和客户一起尝试了你的网址,它奏效了。你能验证这https://accounts.google.com/o/oauth2/auth?redirect_uri=https://developers.google.com/oauthplayground&response_type=code&client_id=407408718192.apps.googleusercontent.com&scope=https://mail.google.com/&login_hint=abc@gmail.com对你有用吗?将 abc@gmail.com 替换为现有电子邮件。

于 2013-05-21T16:23:00.583 回答
6

这里有个问题——Google 不会预先填充虚假的 gmail 地址。如果您将“example@gmail.com”作为参数,它将不起作用。只需尝试您的真实电子邮件地址,它就可以正常工作。我花了大约一个小时才意识到这一点。

于 2015-12-24T08:59:49.070 回答