Laravel - reCAPTCHA重新提交

时间:2018-05-08 11:45:59

标签: laravel recaptcha

我使用Guzzle Client集成了reCAPTCHA,如下所示:

Validator::extend('recaptcha', function ($attribute, $value, $parameters, $validator) {
    $client = new Client();

    $response = $client->post(env('RECAPTCHA_VERFIY_URL'), [
        'form_params' => [
            'secret' => env('RECAPTCHA_SECRET_KEY'),
            'response' => $value
        ]
    ]);

    $body = json_decode((string)$response->getBody());

    return $body->success;
});

然后在我的验证规则中,我有:

'g-recaptcha-response' => 'required|recaptcha'

这很好用,但我遇到的问题是如果已经勾选并验证了reCAPTCHA并且我尝试重新提交表单(例如,如果初始提交包含错误),我会收到“错误”回复。用户无法重新调整此框。

如何处理需要重新提交reCAPTCHA的情况?我通过AJAX提交和验证表格。

0 个答案:

没有答案