Panduan migrasi

Migrasi dari Friendly Captcha ke CaptchaLa

Postur mengutamakan privasi yang sama. Pasang CaptchaLa, dapatkan SDK mobile, ketersediaan Tiongkok daratan, dan challenge fallback yang terlihat. Migrasinya hanya dua perubahan file.

FFriendly CaptchaCurrent setup~10 minCaptchaLaDrop-in target

Seperti apa perubahan kodenya

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' })

Langkah migrasi

  1. 1

    Daftar & ambil App Key + Secret Anda

    Buat akun CaptchaLa gratis, tambahkan situs, salin key Anda. Tanpa panggilan sales, tanpa kontrak.

  2. 2

    Tukar tag widget

    Ganti frc-captcha dengan captchala, data-sitekey dengan data-app-key, dan script src dengan CDN kami. Script bertipe module menjadi script async biasa.

  3. 3

    Perbarui nama field tersembunyi

    Friendly Captcha mengirim frc-captcha-solution; kami mengirim captchala-token. Ganti namanya di handler formulir Anda jika Anda membacanya berdasarkan nama.

  4. 4

    Perbarui verifikasi server

    Endpoint berubah menjadi apiv1.captcha.la/v1/validate. Body membuang field sitekey — kami mengenali situs dari appSecret Anda. Flag valid pada bentuk respons (data.valid) tetap sama.

  5. 5

    Luncurkan secara bertahap

    Tukar satu formulir dalam satu waktu. CaptchaLa berdampingan dengan Friendly Captcha — keduanya tidak berbagi cookie atau state. Kebanyakan tim mendapati konversi sedikit membaik karena komputasi PoW di perangkat pengguna sudah hilang.

Pertanyaan umum

Apakah saya kehilangan narasi privasi yang dapat diaudit?

Arsitektur PoW-only Friendly Captcha memang lebih dapat diaudit dalam arti kriptografis harfiah — benar-benar tidak ada yang bisa di-fingerprint. CaptchaLa juga tidak melakukan fingerprint, tetapi arsitektur kami (risiko adaptif + challenge) lebih kompleks, sehingga audit lebih sulit. Jika kriteria gating privasi Anda adalah 'dapat diaudit oleh pengacara privasi dengan keahlian kriptografi,' itu adalah perbedaan nyata yang layak ditimbang.

Bagaimana dengan mobile?

Ini salah satu kemenangan migrasi terbesar. Friendly Captcha hanya untuk web. CaptchaLa punya SDK native iOS, Android, dan Flutter — backend yang sama, dashboard yang sama, penagihan yang sama. Pasang CAPTCHA di aplikasi mobile Anda tanpa memilih vendor kedua.

Bagaimana pengguna saya merasakan perbedaannya?

Pada ponsel lawas dan laptop spesifikasi rendah, komputasi PoW yang dijalankan Friendly Captcha di latar belakang bisa terasa — beberapa detik tarikan CPU. CaptchaLa tidak menjalankan komputasi berat di perangkat. Kebanyakan pengguna tidak akan menyadari keduanya; pengguna dengan perangkat lemah akan lebih sedikit menyadari kami.