Laravel 中使用Google reCAPTCHA
Google reCAPTCHA 在许多网站中广泛使用,在 laravel 中它易于与第三方包一起使用。验证码用于增强表单的安全性。通过在 laravel 表单中添加验证码,我们可以防止攻击者使用自动化脚本提交表单,并增加了额外的安全层。要以 laravel 形式添加验证码,我们可以使用包 Buzz/laravel-google-captcha,它易于使用并且还提供验证规则来验证验证码。
这个包还提供了重置和刷新功能以及验证码的安全级别,因此我们可以在它的配置文件中配置所有这些东西。
因此,让我们通过示例以 laravel 形式安装或添加验证码
安装使用步骤如下
第 1 步:安装软件包
假设你已经安装了 laravel 和它的基本连接,比如数据库连接和composer。
现在在 laravel 根目录使用 composer 安装包,在 laravel 根目录打开终端并运行以下命令
composer require buzz/laravel-google-captcha
然后运行 composer update
第 2 步:添加服务提供者和别名
大多数软件包都启用了 laravel 软件包发现功能,并自动将服务提供者添加到在 laravel 5.5 之后构建的软件包中,因此如果您的 laravel 版本高于 5.5,那么您可以跳过此步骤。
在 config\app.php 中搜索 providers 键并添加服务提供者
'providers' => [
// ...
"Buzz\LaravelGoogleCaptcha\CaptchaServiceProvider"
]
还找到别名键并添加如下
aliases' => [
// ...
'Captcha' =>"Buzz\LaravelGoogleCaptcha\CaptchaServiceProvider",
]
第 3 步:发布配置以添加配置
现在,发布包的配置,以便我们可以根据需要更改配置。在项目目录中运行以下命令
php artisan vendor:publish --provider="Buzz\LaravelGoogleCaptcha\CaptchaServiceProvider"
这将在config创建一个文件captcha.php
第 4 步:在 Google 帐户中创建站点密钥和密码
因为我们无法在没有站点密钥和秘密的情况下使用 Google reCaptcha,因此我们需要在 Google 控制台帐户上配置它们
首先去 https://www.google.com/recaptcha/admin/create
前提是你已经使用google浏览器登录了google账户
然后你会看到这样的界面
Label :标签 现在在标签中输入站点名称或您可以轻松识别的任何名称。
reCAPTCHA type : 在字段中选择 reCAPTCHA v2
Domain :如果您在本地开发,那么您可以使用 localhost 作为域,如果您正在工作并将其部署到 live 中,那么不要忘记添加完全限定的域名。
谷歌验证码选择域