为了方便用户登录或注册,您可以与多个身份提供程序通信,以查找可用的凭据。您可能需要了解我们的提示界面状态,以便调用下一个身份提供程序。
如需在不同时间点收到有关提示界面状态的通知,请将回调函数名称设置为 data-moment_callback
属性,或者将函数设置为 prompt()
方法(如果您使用 JavaScript API)。
系统会针对以下时刻发送通知:
显示时刻:此时刻发生在调用
prompt()
方法之后。该通知包含一个布尔值,用于指示界面是否显示。跳过的时刻:当“一键式登录”提示因自动取消、手动取消而关闭,或者 Google 未能签发凭据(例如,所选会话已退出 Google)时,就会发生这种情况。
在这种情况下,我们建议您继续尝试其他身份提供程序(如果有)。
关闭时刻:当 Google 成功检索到凭据,或用户想要停止凭据检索流程时,就会发生这种情况。例如,当用户开始在登录对话框中输入用户名和密码时,您可以调用
google.accounts.id.cancel()
方法来关闭一键式登录提示并触发关闭时刻。
以下代码示例实现了跳过的时刻:
<script>
function continueWithNextIdp(notification) {
if (notification.isNotDisplayed() || notification.isSkippedMoment()) {
// try Next provider if One Tap is not displayed or skipped
}
}
</script>
...
<div id="g_id_onload"
data-client_id="YOUR_GOOGLE_CLIENT_ID"
data-login_uri="https://your.domain/your_login_endpoint"
data-moment_callback="continueWithNextIdp"
</div>