Перейти до основного вмісту

Вступ

hCaptcha — це сервіс капчі, що надається Ace Data Cloud, рішення hCaptcha. За допомогою уніфікованого API Ace Data Cloud ви можете швидко інтегрувати hCaptcha за допомогою JavaScript, реалізуючи отримання hCaptcha Token, розпізнавання зображень hCaptcha та інші функції.

Передумови

  • Наявність облікового запису Ace Data Cloud та отримання API Token
  • Node.js 18+ або сучасне браузерне середовище

Базове використання

Основна кінцева точка виклику hCaptcha API:
POST https://api.acedata.cloud/captcha/token/hcaptcha
Повний приклад коду на JavaScript:
const response = await fetch("https://api.acedata.cloud/captcha/token/hcaptcha", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
  "website_key": "a5f74b19-9e45-40e0-b45d-47ff91b7a6c2",
  "website_url": "https://accounts.hcaptcha.com/demo"
}),
});

const result = await response.json();
console.log(result);
Будь ласка, замініть YOUR_API_TOKEN на фактичний токен, отриманий на платформі Ace Data Cloud.

Обробка відповіді

Рекомендується перевіряти код статусу відповіді та обробляти помилки:
if (response.ok) {
  const result = await response.json();
  console.log("Виклик успішний:", result);
} else {
  console.error(`Виклик не вдався, код статусу: ${response.status}`);
  const error = await response.text();
  console.error(error);
}

Обгортка для Node.js

Рекомендується оформити у вигляді багаторазової функції:
async function callhCaptcha(data) {
  const response = await fetch("https://api.acedata.cloud/captcha/token/hcaptcha", {
    method: "POST",
    headers: {
      "Authorization": `Bearer ${process.env.ACE_API_TOKEN}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify(data),
  });
  if (!response.ok) throw new Error(`API error: ${response.status}`);
  return response.json();
}

Обробка помилок

Поширені коди помилок:
Код статусуОпис
401Аутентифікація не пройдена, перевірте API Token
403Недостатньо коштів або відсутній доступ
429Перевищено ліміт частоти запитів
500Внутрішня помилка сервера

Наступні кроки