遷移指南

從 Arkose FunCAPTCHA 遷移到 CaptchaLa

卸下 SDK 體積、終結企業合約、保留自適應機器人防禦。遷移只需換一段 script、改一個驗證端點。

AArkose / FunCAPTCHACurrent setup~10 minCaptchaLaDrop-in target

程式碼改動長這樣

Before — Arkose / FunCAPTCHA
<script src="https://YOUR_PUBLIC_KEY.arkoselabs.com/v2/YOUR_PUBLIC_KEY/api.js" data-callback="onSuccess" async defer></script>
<script>
  function onSuccess(token) {
    document.getElementById('arkose-token').value = token
  }
</script>
<input type="hidden" id="arkose-token" name="arkose-token" />
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 — Arkose server verify (Node)
const res = await fetch('https://verify-api.arkoselabs.com/api/v4/verify/', {
  method: 'POST',
  headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
  body: new URLSearchParams({
    private_key: process.env.ARKOSE_PRIVATE_KEY,
    session_token: req.body['arkose-token'],
  }),
})
const data = await res.json()
if (data.session_details?.solved !== true) 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 帳號。不像 Arkose,沒有 PoC、沒有採購流程——定價公開且自助。免費方案足以涵蓋初步測試。

  2. 2

    移除 Arkose SDK 與回呼接線

    刪除 Arkose 的 script 標籤、回呼函式,以及你從回呼填入的隱藏 input。CaptchaLa 使用簡單的 div 佔位——無需回呼接線。

  3. 3

    加入 CaptchaLa 元件

    在原本 Arkose 元件的位置放上我們的 div 與 script 標籤。隱藏的 token 欄位會自動以 captchala-token 填入,你不必手動管理。

  4. 4

    更新伺服器驗證

    把 Arkose 的 session_details.solved 檢查換成我們的 valid 旗標(data.valid)。端點改為 apiv1.captcha.la/v1/validate。body 從 form-urlencoded 改為 JSON。

  5. 5

    規劃合約收尾

    Arkose 合約通常是年約並自動續約。請留意合約中的取消窗口,並向法務/採購提前通知。多數團隊在收尾期間會讓兩套並行 30 天。

常見問題

切換後會損失機器人偵測準確度嗎?

對多數工作負載而言,沒有可量測的差異。Arkose 的驗證在預設上刻意比我們更難,但他們攔下的機器人族群與我們攔下的,在典型產品流量上高度重疊。如果你是 Roblox/Microsoft 規模、面對指名道姓的對手,答案會更微妙——先來找我們聊聊。

合約重疊期該怎麼處理?

在收尾期間讓兩套並行。表單 A 維持 Arkose;表單 B 切到 CaptchaLa。對比轉化 + 機器人率。多數團隊發現機器人率持平、使用者摩擦率下降。然後在合約續約時退役 Arkose。

Arkose 的風險遙測/分析儀表板呢?

CaptchaLa 有自己的儀表板,提供可比的遙測——驗證率、成功率、風險分數分佈、地理分佈。如果你是從 Arkose Insights 轉過來,形態會很熟悉。