我写了一些代码来使用Google SignIn构建Web应用程序.
首先,初始化API平台,
gAuth = gapi.auth2.init( {
client_id: gAuthClientId,
fetch_basic_profile: false,
scope: gAuthScope
} );
Run Code Online (Sandbox Code Playgroud)
并让用户登录.
gAuth.signIn({
prompt: 'none'
});
Run Code Online (Sandbox Code Playgroud)
在这段代码中,我想跳过(已经)登录用户的auth弹出窗口,并按照开发人员文档中的引用进行操作:
prompt:指定是否提示用户重新进行身份验证.请参阅OpenID连接请求参数.可选的.
提示
可选.以空格分隔的区分大小写的ASCII字符串值列表,指定授权服务器是否提示最终用户进行重新认证和同意.定义的值为:
none
授权服务器不得显示任何身份验证或同意用户界面页面.如果最终用户尚未经过身份验证,或者客户端没有对所请求的声明进行预先配置的同意,或者不满足处理请求的其他条件,则会返回错误.错误代码通常是login_required,interaction_required.这可以用作检查现有身份验证和/或同意的方法.
但它效果不好.实际上,对于已登录的用户,API会显示一次空弹出窗口,并立即关闭它.当我自动执行此阶段时,它被阻止浏览器.
为什么会这样?我应该做些什么来避免签名用户弹出窗口?