reCAPTCHA V3: как бороться с просроченным токеном после простоя? - PullRequest
0 голосов
/ 30 января 2019

Для Google reCAPTCHA V2 было ясно, что делать, когда токен истекает из-за простоя: у клиента есть возможность снова щелкнуть флажок reCaptcha.Для Google reCAPTCHA V3 это отличается, так как неясно, когда токен истекает из-за простоя.

Для reCAPTCHA V3 это предложено Google:

https://developers.google.com/recaptcha/docs/v3

  1. Загрузите API JavaScript с вашим ключом сайта

  2. Вызовите grecaptcha.execute для действия или при загрузке страницы // мы выбираем, когда страницазагружает, хорошо?

  3. Отправьте токен на ваш бэкэнд с просьбой подтвердить // после нажатия кнопки

OK.Если кнопка была нажата на несколько минут позже, чем страница была загружена, токен V3, который мы отправляем бэкэнду, уже истек.Как правильно поступить в этой ситуации?Должны ли мы автоматически обновлять токен, отправляя вызовы в Google каждую минуту?Каков наилучший подход для этого случая?Я не нашел никаких предложений от Google.

1 Ответ

0 голосов
/ 18 июня 2019

Токен должен быть сгенерирован позже, чем при загрузке страницы.Он должен быть сгенерирован прямо перед отправкой в ​​бэкэнд.Другими словами, мы нажимаем кнопку (из моего примера), затем получаем сгенерированный токен, а затем отправляем токен бэкенду.

Это решение имеет смысл и устраняет мою проблему.

...