Skip to main content

Базовая интеграция

Для работы smartCaptcha на Вашем сайте, необходимо добавить smartcaptcha.js в код страниц сайта (там, где планируется ее вызов). Добавьте следующий код:

<html>  <head>    <title>Страница с smartCaptcha</title>    <script src="https://smartcaptcha.pages.dev/smartCaptcha.js" async defer></script>  </head>  <body>    ...  </body></html>

Вы можете включить интеграцию smartCaptcha в любой части сайта, на примере это сделано в теге head, вы так же можете по своему усмострению добавить его и в конец страницы. Параметры async defer ускоряют загрузку и крайне не рекомендуется их удалять.

Теперь smartCaptcha будет загружаться вместе со страницей, и Вы сможете ее применять. Использование smartCaptchа мы старались сделать максимально простым (даже для новичков), вызвать smartCaptcha можно просто с помощью функции:

smartcaptcha('ПУБЛИЧНЫЙ_КЛЮЧ', 'ВАРИАНТ_ОФОРМЛЕНИЯ');//например: smartcaptcha('63nt467Nv9t6sSNaR0n9kq64', 'dark');

ПУБЛИЧНЫЙ_КЛЮЧ - этот ключ Вы можете получить в Центре smartCaptcha, в сведениях Вашего проекта. У нас есть документация, где этот процесс подробно описан: Документация smartCaptcha: Получение ключей.* Публичный ключ указывает системе, в рамках какого сайта (проекта) начинать сессию.

ВАРИАНТ_ОФОРМЛЕНИЯ - указывает, как будет выглядеть smartCaptcha. Если не указано, по-умолчанию будет применена тема 'dark'. Обратитесь к таблице снизу для справки по доступным темам:

Код оформленияОписаниеПример
darkСтандартная тема: темное оформление
lightСтандартная тема: светлое оформление

После запуска функции, пользователь увидит smartCaptcha. После успешного прохождения произойдет событие smartcaptcha, которое будет содержать в ячейках event.detail.status и event.detail.code информацию о пройденной сесии.

Ячейка объектаСодержаниеОписание
event.detail.statusВозвращает статус сессииСуществует пока-что единственный статус: OK (английская раскладка)
event.detail.codeВозвращает код сессииСодержит в себе себе код сессии, по которому можно будет подтвердить в течении некоторого времени, была ли действительно пройдена капча (хакеры могут попытаться подсунуть фейковый код)

Мы советуем реализовывать это с помощью представленного ниже кода, который без проблем решает поставленную задачу (жидает решения капчи, после чего выводит статус и код капчи в браузерную консоль):

smartCaptcha_EmbedStyle.addEventListener("smartcaptcha", function(event) {    console.log(event.detail.status); //Отобразит OK    console.log(event.detail.code); //Отобразит код сессии  });
Это все! Так просто

После получения этих данных, Вы можете без проблем отправить запрос на сервер, вместе с полученным в event.detail.code кодом. Далее, в нашей документации так же описывается, как проверять на сервере, действительно ли была решена капча.

Очень важно

Не забудьте проверить код на стороне сервера!