Turnstile 是 Cloudflare 的 CAPTCHA 替代解决方案。您可以将 Turnstile 作为小组件嵌入到您的网站或应用程序中,它直接在访问者浏览器的后台运行客户端质询。
Turnstile 与质询页面(Challenges Pages)不同之处在于,质询不会暂停请求或中断用户体验。由于小组件嵌入在网页上,并且仅在 HTML 的特定部分上运行,当访问者遇到 Turnstile 小组件时,他们已经到达目标 URL 正在查看页面。Turnstile 小组件不会阻止访问者访问整个网站,而是阻止访问者执行某些操作,例如完成登录或注册表单等,直到小组件被解决。
在大多数情况下,不需要访问者采取进一步的操作。但是,如果需要,Turnstile 可能会显示一个简单的复选框,访问者必须点击该复选框才能继续。
质询通过后,Turnstile 会向访问者发放许可令牌,在完成诸如登录、注册或其他表单提交等敏感操作之前,必须通过 Siteverify API 验证该令牌。
虽然您可以选择在您的网站或应用程序上实施三种类型的小组件,但它们背后的质询逻辑保持不变。
-
Managed(托管)(推荐):功能类似于托管质询(Managed Challenge)页面。它根据从访问者浏览器收集的信号选择质询,并且只有在检测到潜在的自动流量时才呈现交互。
-
Non-Interactive(非交互式的):显示小组件,但访问者不需要与其交互来验证其身份。
-
Invisible(不可见的):小组件对访问者完全不可见,但质询仍在后台运行。
通过 Cloudflare 仪表板为您的网站或应用程序创建小组件时,您将收到一个 sitekey。
通过将 sitekey 添加到 <div> 容器占位符,可将其用于客户端渲染。然后,您可以将该 <div> 代码片段放置在您想要向站点页面或表单添加小组件的位置。
请参考 Turnstile 文档,获取关于在您的网站或应用程序中实施小组件的指导。