迁移指南

从 Friendly Captcha 迁移到 CaptchaLa

同样隐私优先的姿态。换上 CaptchaLa,获得行动 SDK、中国大陆可用性,以及可见的验证兜底。迁移只需改两个文档。

FFriendly CaptchaCurrent setup~10 minCaptchaLaDrop-in target

代码改动长这样

Before — Friendly Captcha
<div class="frc-captcha" data-sitekey="YOUR_SITE_KEY"></div>
<script type="module" src="https://cdn.jsdelivr.net/npm/@friendlycaptcha/sdk/site.compat.min.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 — Friendly Captcha server verify (Node)
const res = await fetch('https://api.friendlycaptcha.com/api/v1/siteverify', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({
    secret: process.env.FRIENDLY_SECRET,
    solution: req.body['frc-captcha-solution'],
    sitekey: process.env.FRIENDLY_SITEKEY,
  }),
})
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 账号、添加一个站点、拷贝密钥。无需销售电话、无需合约。

  2. 2

    替换组件标签

    把 frc-captcha 换成 captchala,data-sitekey 换成 data-app-key,script src 换成我们的 CDN。module 类型的 script 改为一般的 async script。

  3. 3

    更新隐藏字段名称

    Friendly Captcha 提交 frc-captcha-solution,我们提交 captchala-token。如果你依名称读取,就在表单处理程序中改名。

  4. 4

    更新服务器验证

    端点改为 apiv1.captcha.la/v1/validate。body 拿掉 sitekey 字段——我们从你的 appSecret 识别站点。回应结构的 valid 旗标(data.valid)维持不变。

  5. 5

    逐步上线

    一次切换一个表单。CaptchaLa 与 Friendly Captcha 可共存——它们不共享 cookie 或状态。由于少了在用户设备上跑的 PoW 运算,多数团队发现转化略有提升。

常见问题

我会失去可被审计的隐私叙事吗?

在字面的密码学意义上,Friendly Captcha 的纯 PoW 架构确实更可被审计——真的没有任何东西可供指纹识别。CaptchaLa 会分析设备与网络信号来区分机器人和真人;这些信号绝不用于建立跨站画像或接入广告图谱,但自适应风险模型更复杂,审计难度也更高。如果你的一票否决标准是「具备密码学背景的隐私律师能审计」,这确实是一项实在的差别。

移动端呢?

这是最大的迁移收益之一。Friendly Captcha 只支持 Web。CaptchaLa 有原生 iOS、Android 与 Flutter SDK——同一后端、同一仪表板、同一计费。让你在行动 App 中上线 CAPTCHA,无需另选第二家供应商。

我的用户会如何感受到差异?

在较旧的手机与低规格笔电上,Friendly Captcha 在背景跑的 PoW 运算可能会被察觉——几秒钟的 CPU 占用。CaptchaLa 不在设备上跑繁重运算。多数用户两者都不会察觉;硬件较弱的用户会更少察觉到我们。