Где обращаться с reCAPTCHA?В JavaScript или в PHP? - PullRequest
0 голосов
/ 13 сентября 2018

Мой опыт в веб-разработке близок к нулю, но я нашел простой пример формы контакта с reCAPTCHA и пытался выяснить, как заставить ее работать на моем сайте WordPress. Существует live демо .

Возможно ли реализовать функцию 'submit' в index.js таким образом, чтобы он проверял капчу, асинхронно отправлял данные формы и обрабатывал ответ?

new Vue({
  // root node
  el: "#app",
  // the instance state
  //...
  methods: {
    // submit form handler
    submit: function() {
      this.submitted = true;
    },
  //..
});

Если да, то на стороне сервера может быть PHP-скрипт, который обрабатывает запрос, вызывает mail (...) и возвращает «ОК», но не ясно, как проверить капчу в этом случае? Кто это проверяет, JavaScript или PHP?

1 Ответ

0 голосов
/ 13 сентября 2018

Это метод класса, который я использую. Аргумент ($ gRecaptchaResponse) - это то, что возвращается Google, когда вы отправляете капчу, используя javascript

protected function validateGoogleRecaptcha($gRecaptchaResponse)
{

    $secretKey = $this->config['application']['captcha']['recaptcha']['secretKey'];
    $reCaptcha = new \ReCaptcha($secretKey);

    $response = $reCaptcha->verifyResponse(
        $_SERVER["REMOTE_ADDR"],
        $gRecaptchaResponse
    );

    return $response;
}
...