Migrer de Friendly Captcha vers CaptchaLa
Même posture axée sur la vie privée. Intégrez CaptchaLa, et gagnez des SDK mobiles, une disponibilité en Chine continentale et un repli par challenge visible. La migration tient en deux modifications de fichiers.
À quoi ressemble le changement de code
<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><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>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' })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' })Étapes de migration
- 1
Inscrivez-vous et récupérez votre App Key + Secret
Créez un compte CaptchaLa gratuit, ajoutez un site, copiez vos clés. Sans appel commercial, sans contrat.
- 2
Remplacez la balise du widget
Remplacez frc-captcha par captchala, data-sitekey par data-app-key, et le script src par notre CDN. Le script de type module devient un script async classique.
- 3
Mettez à jour le nom du champ caché
Friendly Captcha soumet frc-captcha-solution ; nous soumettons captchala-token. Renommez dans votre gestionnaire de formulaire si vous le lisez par son nom.
- 4
Mettez à jour la vérification serveur
L'endpoint devient apiv1.captcha.la/v1/validate. Le corps abandonne le champ sitekey — nous identifions le site à partir de votre appSecret. L'indicateur valid (data.valid) de la réponse reste identique.
- 5
Déployez progressivement
Changez un formulaire à la fois. CaptchaLa coexiste avec Friendly Captcha — ils ne partagent ni cookies ni état. La plupart des équipes constatent une légère amélioration de la conversion, car le calcul PoW sur les appareils des utilisateurs disparaît.
Questions fréquentes
Vais-je perdre l'argument d'une vie privée auditable ?
L'architecture exclusivement PoW de Friendly Captcha est plus auditable au sens cryptographique littéral — il n'y a véritablement rien à fingerprinter. CaptchaLa ne fait pas non plus de fingerprinting, mais notre architecture (risque adaptatif + challenge) est plus complexe, ce qui rend l'audit plus difficile. Si votre critère d'admissibilité sur la vie privée est « auditable par un avocat spécialisé en cryptographie », c'est une vraie distinction qui mérite réflexion.
Et le mobile ?
C'est l'un des plus grands gains de la migration. Friendly Captcha est uniquement web. CaptchaLa propose des SDK natifs iOS, Android et Flutter — même backend, même tableau de bord, même facturation. Déployez un CAPTCHA dans votre application mobile sans choisir un second fournisseur.
Comment mes utilisateurs ressentent-ils la différence ?
Sur les téléphones anciens et les ordinateurs portables peu puissants, le calcul PoW que Friendly Captcha exécute en arrière-plan peut être perceptible — quelques secondes de charge CPU. CaptchaLa n'exécute pas de calcul lourd sur l'appareil. La plupart des utilisateurs ne verront pas de différence ; ceux au matériel faible nous remarqueront moins.