背景:
Google reCAPTCHA v3 是用于防止垃圾邮件和滥用的流行验证码系统。它依靠机器学习模型来分析用户行为,并提供风险分析分数,而不是简单的挑战响应机制。
服务器端验证:
进行验证在服务器端使用 PHP 的 reCAPTCHA v3,您需要执行以下步骤:
检索 POST 数据:
设置请求参数:
准备 HTTP 请求:
执行请求:
解析响应:
验证 reCAPTCHA:
示例代码:
<code class="php">function isValid() { try { $url = 'https://www.google.com/recaptcha/api/siteverify'; $data = ['secret' => '[YOUR SECRET KEY]', 'response' => $_POST['g-recaptcha-response'], 'remoteip' => $_SERVER['REMOTE_ADDR']]; $options = [ 'http' => [ 'header' => "Content-type: application/x-www-form-urlencoded\r\n", 'method' => 'POST', 'content' => http_build_query($data) ] ]; $context = stream_context_create($options); $result = file_get_contents($url, false, $context); return json_decode($result)->success; } catch (Exception $e) { return null; } }</code>
用法:
只需调用 isValid() 函数即可验证从客户端收到的 reCAPTCHA 令牌。
<code class="php">if (isValid()) { // User passed reCAPTCHA } else { // User failed reCAPTCHA }</code>
以上是如何使用 PHP 在服务器端验证 Google reCAPTCHA v3?的详细内容。更多信息请关注PHP中文网其他相关文章!