Google One-Tap登录弹窗缺失隐私政策与服务条款区域如何解决?
如何在Google One-Tap登录弹窗中显示隐私政策与服务条款?
我们在网站上启用了Google One-Tap登录功能,但弹窗里未显示隐私政策(privacy policy)和服务条款(terms of service)区域。
当前我们的One-Tap弹窗截图:
其他网站的One-Tap弹窗示例截图:

我们的实现基于Google官方文档,现有代码如下:
<script src="https://accounts.google.com/gsi/client" async defer></script> <script> google.accounts.id.initialize({ client_id: googleClientId, callback: handleCredentialResponse, cancel_on_tap_outside: false, context: 'signin', }); google.accounts.id.prompt(); </script>
GCP应用配置情况:
在OAuth同意屏幕标签页中,已完整填写相关字段及应用域名信息:
- 应用主页:https://<our_domain>
- 应用隐私政策链接:https://<our_domain>/privacy_policy
- 应用服务条款链接:https://<our_domain>/term_of_use
Google应用状态为已验证(Verified)且处于生产环境(In production):
解决方案
要在One-Tap弹窗中显示隐私政策和服务条款,可按以下步骤排查调整:
确认链接可访问性
确保隐私政策、服务条款链接是公开可访问的,无登录限制或访问权限拦截。Google爬虫需要抓取到页面内容,才会在弹窗中展示链接。同时检查链接格式是否为完整HTTPS地址,无拼写错误。显式添加配置参数
在google.accounts.id.initialize配置中,手动指定相关URI参数,强制触发弹窗显示条款区域:google.accounts.id.initialize({ client_id: googleClientId, callback: handleCredentialResponse, cancel_on_tap_outside: false, context: 'signin', login_uri: 'https://<our_domain>', terms_of_service_uri: 'https://<our_domain>/term_of_use', privacy_policy_uri: 'https://<our_domain>/privacy_policy' });等待配置同步
GCP控制台的OAuth配置修改后,Google服务器需要1-2小时完成同步,刚修改完建议等待一段时间再测试。使用外部用户测试
若用GCP项目内部成员账号测试,弹窗可能不会显示完整条款。换用非项目成员的普通Google账号验证效果。清除浏览器缓存
浏览器可能缓存旧的One-Tap配置,清除缓存和Cookie后重新加载页面测试。
内容的提问来源于stack exchange,提问作者ofir_aghai
相关产品推荐
相关产品推荐

