本文档列出了开发者在其环境中使用 reCAPTCHA 时可能会遇到的常见 reCAPTCHA 集成问题。
网站密钥无效或密钥类型无效
如果您看到 Invalid site key 或 Invalid key type 错误,请检查以下各项:
- 验证 Google Cloud 控制台中的密钥版本是否与您的网站或第三方 CMS 插件中配置的版本一致(例如,
Website • score对应v3,或Website • checkbox对应v2 Checkbox)。如需查看密钥版本,请参阅在Google Cloud 控制台中查看密钥版本。 - 如果您的 reCAPTCHA 网站密钥已被删除或不再有效,请创建新密钥并更新您的 CMS 插件,或将该密钥安装到您的网页上。
密钥迁移失败
在以下任一情况下,网站密钥可能无法迁移:
您或您的组织已超出可创建的项目数量上限。
若要解决该问题,您可以重复使用某个现有项目、申请增加项目创建配额,或者等待自动化迁移完成。
您的工作区组织已限制创建新的 Google Cloud项目。
如需在 Google 管理控制台中启用 Google Cloud 服务,请与您的管理员联系。如需了解详情,请参阅为用户启用或停用 Google Cloud 。
SecurityError: blocked a frame with origin "https://www.google.com" from accessing a frame with origin "<your domain>"
如果 reCAPTCHA widget HTML 元素在最终用户点击复选框后的某个时间被程序化移除,通常会出现这种情况。我们建议使用 grecaptcha.enterprise.reset() JavaScript 函数来重置 reCAPTCHA widget。
Localhost 不在受支持的网域列表中
默认情况下,不支持 localhost 网域。如果您想继续支持这些网域进行开发,可以将它们添加到网站密钥的支持网域列表中。 前往 Google Cloud 控制台,更新受支持网域的列表。我们建议您为开发和生产环境使用不同的密钥,并且仅允许在开发网站密钥中使用 localhost。
创建评估时,reCAPTCHA 返回了 BROWSER_ERROR
当 reCAPTCHA 脚本无法执行 execute 操作时,会出现 BROWSER_ERROR 令牌。在大多数情况下,这是由于客户端网络故障或超时所致。您必须使用 JavaScript 重试 execute()。