You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

FedCM迁移测试遇NetworkError:无法获取令牌及One Tap弹窗不显示问题

FedCM迁移测试中One Tap弹窗不显示及NetworkError问题排查

问题场景

我们按照FedCM Beta测试计划对应用程序做迁移测试,执行了以下操作:

  • 在chrome://flags中启用FedCmWithoutThirdPartyCookies实验特性
  • 浏览器设置中阻止第三方Cookie
  • 在IdConfiguration对象中设置use_fedcm_for_prompt: true
  • 未使用opt_out_or_no_session参数
  • 未配置data-prompt_parent_id和中间iframe的位置样式属性
  • 网站未定义CSP
  • 登录未使用AMP支持

操作后出现两个问题:

  1. One Tap提示弹窗初始不显示,抛出提示:“浏览器站点设置中已禁用第三方登录”
  2. 一分钟后控制台出现错误:[GSI_LOGGER]: FedCM get() rejects with NetworkError: Error retrieving a token.,始终无法看到弹窗

尝试注释IdConfiguration中的auto_select: true参数,问题依旧。

排查方向及解决建议

  1. 检查第三方登录权限设置
    除了阻止第三方Cookie,务必确认Chrome中「设置 > 隐私和安全 > 网站设置 > 第三方登录」选项处于允许状态。该选项禁用会直接触发“浏览器站点设置中已禁用第三方登录”提示,是最常见的触发原因。

  2. 确认FedCM特性生效
    修改chrome://flags后重启浏览器,再次确认FedCmWithoutThirdPartyCookies处于「Enabled」状态——部分场景下不重启浏览器,特性不会完全加载生效。

  3. 验证核心配置完整性
    检查IdConfiguration中的client_id等核心参数是否拼写正确、配置完整。另外FedCM要求站点必须使用HTTPS(本地开发可使用localhost),HTTP环境会直接导致NetworkError。

  4. 排查网络请求状态
    打开浏览器网络面板,查看FedCM相关请求(如https://accounts.google.com/gsi/fedcm/开头的请求)是否出现4xx/5xx错误,或是被浏览器安全策略拦截,这是触发NetworkError的主要原因。

  5. 临时添加CSP测试
    虽然当前未定义CSP,但部分浏览器环境下,缺失FedCM相关的CSP指令可能导致请求被拦截。可尝试添加以下指令测试:

    Content-Security-Policy: connect-src https://accounts.google.com; frame-src https://accounts.google.com;
    
  6. 确认站点FedCM注册状态
    确保你的域名已在Google Identity控制台完成FedCM相关的配置与验证,未注册的域名无法正常使用FedCM功能。

内容的提问来源于stack exchange,提问作者mani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 00:10:58