Google 一键签名 `intermediate_iframe_close_callback ` 不工作

Google one tap signing `intermediate_iframe_close_callback ` not working

我在我的网站上使用 google 一键登录,我想处理用户关闭事件(退出和关闭按钮)并想显示一些 google 登录按钮。

我已尝试使用 intermediate_iframe_close_callback 回调来按照 doc 处理关闭事件,但它不起作用。这是我正在使用的代码:

<script src="https://accounts.google.com/gsi/client" async defer></script>
google.accounts.id.initialize({
  client_id: process.env.analyticsConfig.googleOAuth.clientId,
  callback: handleGoogleOnetapResponse,
  context: 'signup',
  prompt_parent_id: prompt_parent_id,
  cancel_on_tap_outside: false,
  intermediate_iframe_close_callback: logBeforeClose
});
google.accounts.id.prompt();

有谁能帮忙吗,先谢谢了。

正如您在 official documentation 中所写,它说:

The intermediate_iframe_close_callback field takes effect only in intermediate iframe mode

表示需要添加中间iframe Support JavaScript API as specified here.
并通过指定的 Iframe 集成 One Tap here


关于关闭 google 一次点击可能会在 prompt 回调中完成通知的其他选项:

google.accounts.id.prompt((notification) => {
    if (notification.isSkippedMoment() && notification.getSkippedReason() === 'user_cancel') {
        // do fallback logic
    }
});

您可以查看提示文档here以获得更多功能。