Google reCAPTCHA:如何在服务器端获得用户响应和验证?
我正在做一个Java(JSP + Servlet)Web应用程序(我知道这个问题与技术无关)。我希望使用最新的Google reCAPTCHA服务。
我正在玩一个谷歌reCAPTCHA的例子,在这里找到:
https://developers.google.com/recaptcha/docs/display#config
<html>
<head>
<title>reCAPTCHA demo: Simple page</title>
<script src="https://www.google.com/recaptcha/api.js" async defer></script>
</head>
<body>
<form action="?" method="POST">
<div class="g-recaptcha" data-sitekey="my_site_key"></div>
<br/>
<input type="submit" value="Submit">
</form>
</body>
</html>
我能够看到显示的验证码图像,如下所示:
当我检查“我不是机器人”时,我得到以下内容:
如您所见,有一个“验证”按钮,根据我的测试,用户响应将发送到Google进行验证。
我如何获得用户响应,以便我可以在自己的后端代码中验证用户响应(如Google在 https://developers.google.com/recaptcha/docs/verify 中建议的那样)。
g-recaptcha-response POST parameter when the user submits the form on your site
在服务器端,我可以通过单击“提交”按钮,仅在用户首先通过Google成功验证时,才能从参数“g-recaptcha-response”中获取用户输入。否则,“g-recaptcha-response”在服务器端为空。这意味着我只能在客户端验证成功后才能进行服务器端验证。如果是这样,在服务器端进行另一次验证有什么意义,这是Google reCAPTHA提供的选项?
我错过了什么吗?