为方便用户登录或注册,您可以与多个身份提供方通信,以查找可用的凭据。您可能需要知道我们的提示界面状态,以便调用下一个身份提供方。
若要在不同时刻收到有关提示界面状态的通知,请将回调函数名称设置为 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>