常见问题解答

我应该使用 reCAPTCHA Enterprise 吗?

reCAPTCHA Enterprise 每月可免费提供多达 10,000 次评估,还提供其他功能。 其他功能 (例如实时分析)为大多数开发者提供了最佳的起点。 点击此处开始使用。

我可以将 reCAPTCHA 与第三方解决方案搭配使用吗?

可以,您可以同时使用 reCAPTCHA(非 Enterprise 版)和 reCAPTCHA Enterprise。通常,第三方解决方案会要求您提供公钥以及密钥或 API 密钥。请务必仅向可信的第三方提供您的密钥和 API 密钥。

如何从 v2 或 v3 迁移到 reCAPTCHA Enterprise?

迁移过程需要 5-10 分钟才能完成,并且不需要更改代码。

我应该使用 reCAPTCHA v2 还是 v3?

reCAPTCHA v3 适用于希望获取更多流量数据的网站所有者。 如需了解详情,请参阅 reCAPTCHA v3 开发者指南

我们支持 v2 的安全性和易用性。

如需详细了解 reCAPTCHA v2 和 v3 之间的区别,请参阅版本比较

reCAPTCHA 是否使用 Cookie?

reCAPTCHA 在执行时会设置必要的 Cookie (_GRECAPTCHA),以便提供风险分析。 如果您不想使用可能设置了其他 Cookie 的 www.google.com 网域,可以改用 www.recaptcha.net。

我在使用 reCAPTCHA 时是否受到任何 QPS 或每日限制?

如果您希望每秒调用超过 1,000 次或每月调用超过 1,000,000 次,则必须使用 reCAPTCHA Enterprise 或填写此表单,然后等待例外情况批准。 如果网站密钥的 QPS 超过 1000,则可能无法处理某些请求。 如果 v3 网站密钥超出其每月配额,则在当月的剩余时间内,site_verify 可能会失败,并返回静态分数 0.9 和错误消息“超出免费配额”。当 v3 网站超出配额时,不会有任何用户可见的指示。 如果 v2 网站密钥超出其每月配额,则在当月的剩余时间内,reCAPTCHA widget 中可能会向用户显示以下消息或类似消息:“此网站已超出 reCAPTCHA 配额。”在强制执行配额之前,网站所有者将收到三封电子邮件通知,并且至少有 90 天的时间来迁移到 reCAPTCHA Enterprise。如果任何网域每月使用的网站密钥调用次数超过 100 万次,则视为超出配额。这包括该交易量是否分布在同一网域中的多个密钥上。

我想隐藏 reCAPTCHA 徽章。允许哪些行为?

只要您在用户流中明显包含 reCAPTCHA 品牌宣传,就可以隐藏此徽章。请添加以下文字:

This site is protected by reCAPTCHA and the Google
    <a href="https://policies.google.com/privacy">Privacy Policy</a> and
    <a href="https://policies.google.com/terms">Terms of Service</a> apply.

例如:

注意:如果您选择隐藏徽章,请使用

.grecaptcha-badge { visibility: hidden; }

我想使用 reCAPTCHA 运行自动化测试。该怎么做?

对于 reCAPTCHA v3,请为测试环境创建单独的密钥。由于 reCAPTCHA v3 依赖于查看实际流量,因此分数可能不准确。

对于 reCAPTCHA v2,请使用以下测试密钥。您将始终获得“无需验证码”状态,并且所有验证请求都会通过。

  • 网站密钥:6LeIxAcTAAAAAJcZVRqyHh71UMIEGNQ_MXjiZKhI
  • 密钥:6LeIxAcTAAAAAGG-vFI1TnRWxMZNFuojJ4WifJWe

reCAPTCHA widget 将显示一条警告消息,以确保它不会用于生产流量。

在调试网站时,如何避免进入 reCAPTCHA 代码?

为避免在调试网站上的其他 JavaScript 时进入 reCAPTCHA 代码,请将 reCAPTCHA 脚本 /recaptcha__.+\.js$ 添加到浏览器的忽略列表中。如需了解 Chrome 的相关说明,请参阅忽略自定义脚本列表。其他浏览器也提供类似的功能。

如何查看有关网站流量的更多信息?

reCAPTCHA 会在管理控制台中报告每日统计数据。

我可以在全球范围内使用 reCAPTCHA 吗?

可以,当无法访问“www.google.com”时,请在您的代码中使用“www.recaptcha.net”。

  • 首先,将 <script src="https://www.google.com/recaptcha/api.js"></script> 替换为 <script src="https://www.recaptcha.net/recaptcha/api.js"></script>
  • 然后,对网站上的所有“www.google.com/recaptcha/”实例执行同样的操作。

我可以自定义 reCAPTCHA widget 或徽章吗?

是的。reCAPTCHA 提供两种主题:浅色和深色,如下所示。如需选择主题背景,只需在 grecaptcha.render 参数中设置 data-theme 属性。

浅色主题:

深色主题:

如何自定义 reCAPTCHA v3?

适用于 Invisible reCAPTCHA 的 JavaScript API 也适用于 v3。只需使用 JavaScript API 通过 v3 网站密钥显式呈现 reCAPTCHA,即可访问重新定位徽章或更改主题等选项。

使用此方法呈现 reCAPTCHA v3 时,请务必将 size 参数设置为 'invisible',并在调用 grecaptcha.execute 时使用 grecaptcha.render 返回的客户端 ID,而不是网站密钥。

最近,我的 reCAPTCHA widget 开始显示“网站密钥无效”。发生了什么?

如果您看到此错误,则表示您的 reCAPTCHA 网站密钥已失效。如需激活,请注册新密钥,然后按照该页面上的说明操作。

我收到一个未捕获的 SecurityError:阻止了源为“https://www.google.com”的框架访问源为“&ltyour domain&gt”的框架。该怎么做?

如果最终用户点击复选框后,reCAPTCHA widget HTML 元素在某个时间点被以编程方式移除,通常会发生这种情况。我们建议使用 grecaptcha.reset() JavaScript 函数来重置 reCAPTCHA widget。

我正在我的网站上使用内容安全政策 (CSP)。如何配置它以与 reCAPTCHA 搭配使用?

我们建议使用 CSP3 中记录的基于随机数的做法。 请务必在 reCAPTCHA api.js 脚本标记中添加随机数,剩下的交给我们处理。

注意:reCAPTCHA 还可在支持 'strict-dynamic' 的浏览器上使用。

或者,请将以下值添加到指令中:

  • script-src https://www.google.com/recaptcha/, https://www.gstatic.com/recaptcha/
  • frame-src https://www.google.com/recaptcha/, https://recaptcha.google.com/recaptcha/
  • connect-src https://www.google.com/recaptcha/

我收到一条错误消息,提示“localhost 不在受支持的网域列表中”。该怎么做?

默认情况下,不支持 localhost 网域。如果您希望继续支持这些网域进行开发,可以将它们添加到网站密钥的支持网域列表中。前往 reCAPTCHA Enterprise 控制台reCAPTCHA 控制台(视情况而定),更新受支持的网域列表。我们建议您为开发和生产使用单独的密钥,并且仅允许在开发网站密钥上使用 localhost。

仅在 iOS 10 上,用户完成挑战后页面会滚动到底部?

这是 Apple 方面存在的一个聚焦 bug,我们已向 Apple 报告。此问题仅影响 iOS 10 上的用户,且仅在部分网站上出现。如果您受到此问题的影响,一种解决方法是将 reCAPTCHA widget 移到网页上较高或较低的位置,或者使用 reCAPTCHA v3

我的计算机或网络可能在发送自动查询内容?

如果您是从 reCAPTCHA 微件跳转到此页面的,则会看到一条消息,内容为“很抱歉,您的计算机或网络可能正在发送自动查询。为了保护我们的用户,我们目前无法处理您的请求。”

很遗憾,以下几个原因可能会导致优秀用户遇到这种情况:

  • 您可能正在使用被滥用的共享网络
  • 您的互联网服务提供商可能最近为您分配了一个可疑的 IP 地址
  • 您尝试访问的网站目前可能正遭受严重攻击

如需排查这些问题,请参阅异常流量帮助页面,或稍后再试。

哪些操作名称有效?

操作只能包含字母数字字符、斜杠和下划线。 操作不得特定于用户。