Формы. Использование Google Recaptcha в формах

Google Recaptcha v3 позволяет прозрачно, без ручных проверок проверять пользователя на бота.

Как настроить рекапчу

Для использования Google Recaptcha необходимо выполнить следующее: 

1. Получить секретный и публичный ключи на сервисе Рекапчи (v3): https://www.google.com/recaptcha/intro/v3.html 

2. Добавляем ключи в настройки (as_settings) с кодами recaptchaPrivateKey, recaptchaPublicKey

3. В GetLayout Select 1 добавляем параметр recaptchaPublicKey:  dbo.as_setting('recaptchaPublicKey', '') recaptchaPublicKey

4. У формы в GetItem SELECT 2 поставить 1 EnableRecaptcha

5. В итоге при сохрании формы будет проводиться прозрачная проверка с обращением к внешнему сервису Google Recaptcha. 

Отключение рекапчи

  • Если необходимо у конкретной формы отключить рекапчу используйте 0 EnableRecaptcha в GetItem SELECT 2 для формы. 
  • Для полного отключения рекапчи на сайте достаточно сделать пустым параметр recaptchaPublicKey в GetLayout SELECT 1, а также очистить настройки recaptchaPublicKey  и recaptchaPrivateKey. 

Внутренние детали рекапчи

  • В поле input[type=hidden]#as-g-recaptcha хранится значение токена пользователя (оно переиницализируется при каждом сохрании поля). 
  • Проверка на бота происходит в форме перед вызовом процедуры CheckItem. 
  • Вы можете изменить сообщение о блокировке от Google - для этого необходимо указать значение в Lang метке с кодом invalidRecaptcha (part пустой).
  • token передается в форму через дополнительный параметр с кодом recaptchaToken в коллекции полей. После проверки он сразу удаляется из коллекции. 
  • если запускать приложение локально, то рекапча будет отключена и hidden поле не добавляется на страницу.

Платформа Falcon Space

Это снижение стоимости владения

за счет меньшего количества людей для поддержки

Это быстрое внесение изменений

по ходу эксплуатации программы

Это современный интерфейс

полная адаптация под мобильные устройства

Бесплатное обучение разработке на Falcon Space

Вы можете разрабатывать самостоятельно или сотрудничать с нами в плане веб-разработки на платформе Falcon Space.
Примечание