castillo-n/recaptcha-v3calls

包含三个调用,其中两个在前端(一个用于js,一个用于元素),还有一个用于在后端验证recaptcha

v1.0.1 2023-10-16 15:22 UTC

This package is auto-updated.

Last update: 2024-09-15 18:17:12 UTC


README

轻松实现Google reCAPTCHA v3的调用,使其可以在任何地方使用。要安装它

composer require castillo-n/recaptcha-v3calls

使用它:有3个静态调用。

backendPHPVerificationCall非常明确。您只需用它来验证recaptcha字符串。如果您不想使用$_POST,可以发送一个captcha,或者将其留为空字符串,这样就会触发函数在$_POST中搜索recaptcha的值。默认的分数值为.6,我认为Google的为.5,您可以通过传递一个介于0到1之间的浮点值作为第二个参数来更改它,值越低,机器人通过就越容易

jsCallInsert非常明确。您只需用它提交表单到后端并创建captcha

htmlInsideTheFormCallInsert非常明确:)。您只需用它创建当提交按钮被按下时Google需要生成的recaptcha按钮,这很重要,因为从创建到验证之间有两分钟的时间,包括提交步骤。如果在captcha的创建和验证之间有两分钟的时间差,那么您就没有机会了,您将不得不使用新的captcha重新提交表单。这使得那些不知道这个问题的用户不会疑惑为什么他们的表单没有正确提交,因为它将captcha创建添加到提交按钮中。

需要添加到您的.env文件中的重要值是GOOGLE_RECAPTCHA_SECRET GOOGLE_RECAPTCHA_KEY GOOGLE_RECAPTCHA_SCORE。名称非常明确。secret是密钥,key是公钥,score是您希望用户达到的分数,以便正确提交表单。如果您不想在env文件中使用这些变量,则只需在函数调用中将它们作为值传递。以下是一些函数调用及其参数。htmlInsideTheFormCallInsert($buttonClasses = 'btn btn-light', $buttonText = "Submit", $key = null) jsCallInsert($formId = null, $action = null, $key = null) backendPHPVerificationCall($captcha = '', $wantedScoreValue = 0.7, $secret_key = null)

要实现它,您需要使用

use RecaptchaV3Calls\Recaptcha;

然后调用任何函数,因为它们是静态函数,所以您必须以某种方式调用它们,例如:在HTML、Blade、Twig文件等(标签可能根据您使用的平台而有所不同),但如下所示(不能用于.html或.htm文件)

然后在您的后端

$didTheCaptchaPassed_thisIsABoolean = Recaptcha::backendPHPVerificationCall($captcha); //然后执行您需要执行的验证。返回有两个参数 ['success' => true||false, 'error' => ''||'错误描述']