迁移指南

从 hCaptcha 迁移到 CaptchaLa

10 分钟内即插即用完成替换。表单形态相同——组件更快、没有图像分类回合,你的流量仍是你的流量。

hhCaptchaCurrent setup~10 minCaptchaLaDrop-in target

代码改动长这样

Before — hCaptcha
<div class="h-captcha" data-sitekey="YOUR_SITE_KEY"></div>
<script src="https://js.hcaptcha.com/1/api.js" async defer></script>
After — CaptchaLa
<button id="login-btn">Sign in</button>
<script src="https://cdn.captcha-cdn.net/captchala-loader.js"></script>
<script>
  loadCaptchala(() => Captchala.init({ appKey: 'YOUR_APP_KEY', action: 'login' })
    .onSuccess(res => onToken(res.token))
    .bindTo('#login-btn'));
</script>
Before — hCaptcha server verify (Node)
const res = await fetch('https://api.hcaptcha.com/siteverify', {
  method: 'POST',
  headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
  body: new URLSearchParams({
    secret: process.env.HCAPTCHA_SECRET,
    response: req.body['h-captcha-response'],
  }),
})
const data = await res.json()
if (!data.success) return res.status(400).json({ error: 'bot' })
After — CaptchaLa server verify (Node)
const res = await fetch('https://apiv1.captcha.la/v1/validate', {
  method: 'POST',
  headers: {
    'X-App-Key': process.env.CAPTCHALA_APP_KEY,
    'X-App-Secret': process.env.CAPTCHALA_APP_SECRET,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ pass_token: req.body['captchala-token'] }),
})
const { data } = await res.json()
if (!data || !data.valid) return res.status(400).json({ error: 'bot' })

迁移步骤

  1. 1

    注册并取得你的 App Key + Secret

    创建免费 CaptchaLa 账号、添加一个站点,拷贝 App Key(公开)与 App Secret(服务器端)。免绑卡。

  2. 2

    替换组件标签

    把 h-captcha class 换成 captchala,data-sitekey 换成 data-app-key,script src 换成我们的 CDN URL。结构维持一致。

  3. 3

    更新隐藏字段名称

    hCaptcha 注入 h-captcha-response,CaptchaLa 注入 captchala-token。如果你在表单处理程序中依名称引用该字段,就寻找替换它。

  4. 4

    更新服务器验证

    将端点改为 apiv1.captcha.la/v1/validate。我们使用 JSON(hCaptcha 用 form-urlencoded),所以要更新 Content-Type 与 body。回应中仍有 valid 旗标(data.valid)——分支逻辑不必改。

  5. 5

    逐步上线

    先在一个表单上换成 CaptchaLa,测量几小时的转化与验证率。由于少了图像分类回合,多数团队会立刻看到完成率持平或提升。

常见问题

我的 hCaptcha 账号会怎样?

什么都不会——维持原样、停止送出请求即可。没有合约、没有通知步骤。账号会闲置在那。如果你想正式关闭,hCaptcha 有自助删除账号的选项。

Core Web Vitals 会改善吗?

通常会。hCaptcha 的组件在表单页面通常会让 LCP 增加 400–600ms。CaptchaLa 的组件目标是 <100ms。确切差距取决于页面其他预算,但在表单密集的页面上差异很明显。

我正在用的 hCaptcha Enterprise 功能呢?

多数企业版功能(自订主题、高端风险打分、分析仪表板)在 CaptchaLa 的标准方案里都有直接对应。文档中的迁移页面列出了每项功能及其 CaptchaLa 对应。