Geçiş kılavuzu

Turnstile'dan CaptchaLa'ya Geçiş

10 dakikadan kısa sürede doğrudan takılan bir alternatif. Formlarınızı koruyun, Cloudflare bağımlılığından kurtulun, doğrulama yedeği ve Çin anakarası uç noktaları kazanın.

TTurnstileCurrent setup~10 minCaptchaLaDrop-in target

Kod değişikliği nasıl görünür

Önce — Turnstile
<div class="cf-turnstile" data-sitekey="YOUR_SITE_KEY"></div>
<script src="https://challenges.cloudflare.com/turnstile/v0/api.js" async defer></script>
Sonra — 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>
Önce — Turnstile sunucu doğrulaması (Node)
const res = await fetch('https://challenges.cloudflare.com/turnstile/v0/siteverify', {
  method: 'POST',
  headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
  body: new URLSearchParams({
    secret: process.env.TURNSTILE_SECRET,
    response: req.body['cf-turnstile-response'],
  }),
})
const data = await res.json()
if (!data.success) return res.status(400).json({ error: 'bot' })
Sonra — CaptchaLa sunucu doğrulaması (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' })

Geçiş adımları

  1. 1

    Kaydolun ve App Key + Secret'inizi alın

    Ücretsiz bir CaptchaLa hesabı oluşturun, bir site ekleyin ve App Key'i (genel) ile App Secret'i (sunucu tarafı) kopyalayın. Cloudflare hesabı gerekmez.

  2. 2

    Widget etiketini değiştirin

    cf-turnstile'ı captchala ile, data-sitekey'i data-app-key ile değiştirin. Script src'sini bizim CDN'imize çevirin. Widget yapısı (bir div yer tutucusu + bir script etiketi) aynıdır.

  3. 3

    Gizli alan adını güncelleyin

    Turnstile cf-turnstile-response ekler; CaptchaLa captchala-token ekler. Çoğu form işleyici alanı adıyla okumaz, ancak sizinki okuyorsa sabiti tek bir yerde yeniden adlandırın.

  4. 4

    Sunucu doğrulama çağrısını güncelleyin

    Uç noktayı apiv1.captcha.la/v1/validate olarak değiştirin. Biz JSON kabul ederiz (Turnstile form-urlencoded alır), bu nedenle Content-Type ve gövde yapısını güncelleyin. Yanıt yine dallanma kodunuz için bir valid bayrağı (data.valid) döndürür.

  5. 5

    Kademeli olarak yayına alın

    Çoğu formda Turnstile'ı tutun, önce düşük trafikli tek bir forma CaptchaLa'yı ekleyin. Bir gün boyunca dönüşüm ve doğrulama oranını izleyin. Memnun kaldığınızda genişletin — minimum tutar veya sözleşme yoktur.

Sıkça sorulan sorular

Cloudflare CDN'imi koruyup yine de CaptchaLa kullanabilir miyim?

Evet. CaptchaLa herhangi bir CDN'den bağımsızdır — müşterilerimizin çoğu CDN için Cloudflare'i, doğrulama için CaptchaLa'yı tutar. İki katman çakışmaz.

Cloudflare bot algılama kurallarım hâlâ geçerli olacak mı?

Evet — bunlar Cloudflare WAF / Bot Management özellikleridir, Turnstile'dan ayrıdır. Turnstile widget'ını kaldırmanın Cloudflare bölge yapılandırmanıza etkisi yoktur.

Turnstile'ı Cloudflare Workers üzerinden kullanıyorsam ne olur?

Worker tarafında geçiş aynıdır. Turnstile fetch'ini CaptchaLa fetch'iyle değiştirin. Dokümanlarımızda Workers çalışma zamanıyla uyumlu bir parçacık var.