В
инструкции от гугла, говорится:
Автоматически привязать вызов к кнопке
Самый простой способ использовать reCAPTCHA v3 на вашей странице - это включить необходимый ресурс JavaScript и добавить несколько атрибутов к вашей кнопке html.
Для начала следует добавить на сайт скрипты:
<script src="https://www.google.com/recaptcha/api.js"></script>
<script>
function onSubmit(token) {
document.getElementById("demo-form").submit();
}
</script>
И атрибуты к кнопке формы:
<button class="g-recaptcha"
data-sitekey="reCAPTCHA_site_key"
data-callback='onSubmit'
data-action='submit'>Submit</button>
В первом скрипте
<script src="https://www.google.com/recaptcha/api.js"></script>
насторожило отсутствие публичного ключа в ссылке, из за чего на сайте в правом нижнем углу не появлялся логотип рекаптчи. Добавив сюда ключ /recaptcha/api.js?render=mysitekey12345 и на моем сайте появился логотип рекаптчи, после чего я решил что теперь она должна заработать, но на самом деле не понимаю, добился ли я этого.
Кнопка в моей форме реализована не через тег
<button>
, она через
<input type="submit" id="Anketa">
, но я добавил к ней атрибуты:
<input type="submit" id="Anketa" data-sitekey="mysitekey12345" data-callback='onSubmit' data-action='submit'>
, а в тег формы добавил id="demo-form".
Вопросы:
1) Теперь после проверочной самостоятельной отправки формы, все происходит как обычно, т.е. я не вижу никаких следов деятельности рекаптчи и не могу быть уверен в том что она работает. А как проверить и убедиться в том что рекаптча действительно защищает мою форму?
2) Допустим рекаптча работает, но что будет, если пользователь совершит неудачную отправку формы и рекаптча примет его за бота - предложит ли она пользователю выбрать картинки, выдаст ошибку или даже оповещения пользователя не произойдет, в то время как форма не отправится?
3) Есть разные пути интеграции рекаптчи, приведенные на разных ресурсах - чем они отличаются от решения, предложенного гуглом, к которому я прибегнул?