Hướng dẫn chuyển đổi

Chuyển từ hCaptcha sang CaptchaLa

Thay thế trực tiếp trong chưa đến 10 phút. Cùng hình thức biểu mẫu — widget nhanh hơn, không còn vòng phân loại ảnh, và lưu lượng của bạn vẫn là của bạn.

hhCaptchaCurrent setup~10 minCaptchaLaDrop-in target

Thay đổi mã trông như thế nào

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

Các bước chuyển đổi

  1. 1

    Đăng ký & lấy App Key + Secret

    Tạo tài khoản CaptchaLa miễn phí, thêm một site, rồi sao chép App Key (công khai) và App Secret (phía máy chủ). Không cần thẻ tín dụng.

  2. 2

    Đổi thẻ widget

    Thay class h-captcha bằng captchala, data-sitekey bằng data-app-key, và script src bằng URL CDN của chúng tôi. Cấu trúc giữ nguyên y hệt.

  3. 3

    Cập nhật tên trường ẩn

    hCaptcha chèn h-captcha-response; CaptchaLa chèn captchala-token. Hãy tìm-thay tên trường trong trình xử lý biểu mẫu nếu bạn tham chiếu theo tên.

  4. 4

    Cập nhật xác thực máy chủ

    Đổi endpoint thành apiv1.captcha.la/v1/validate. Chúng tôi dùng JSON (hCaptcha dùng form-urlencoded), nên hãy cập nhật Content-Type và body. Cờ valid (data.valid) vẫn có trong phản hồi — mã rẽ nhánh giữ nguyên.

  5. 5

    Triển khai dần dần

    Đưa CaptchaLa vào một biểu mẫu trước, đo tỷ lệ chuyển đổi và tỷ lệ thử thách trong vài giờ. Phần lớn các đội thấy tỷ lệ hoàn thành giữ nguyên hoặc cải thiện ngay vì các vòng phân loại ảnh đã biến mất.

Câu hỏi thường gặp

Tài khoản hCaptcha của tôi sẽ ra sao?

Không sao cả — cứ để nguyên và ngừng gửi yêu cầu. Không có hợp đồng, không bước thông báo. Tài khoản sẽ ngủ đông. Nếu muốn đóng chính thức, hCaptcha có tùy chọn tự xóa tài khoản.

Core Web Vitals có cải thiện không?

Thường là có. Widget của hCaptcha thường thêm 400–600ms vào LCP trên các trang biểu mẫu. Widget của CaptchaLa nhắm tới <100ms. Mức chênh lệch chính xác tùy vào ngân sách còn lại của trang, nhưng trên các trang nhiều biểu mẫu thì khác biệt rất rõ.

Còn các tính năng hCaptcha Enterprise tôi đang dùng thì sao?

Phần lớn tính năng enterprise (giao diện tùy chỉnh, chấm điểm rủi ro nâng cao, bảng phân tích) đều có phiên bản tương đương trong gói tiêu chuẩn của CaptchaLa. Trang chuyển đổi trong tài liệu liệt kê từng tính năng và phiên bản tương ứng của CaptchaLa.