Laravel – 验证码(captcha)
文章描述:
laravel8 验证码包使用方法
打开packagist.org查找 laravel captcha,找到mews/captcha ,根据packagist上的使用方法一步步来实现验证码的安装。
composer
composer require mews/captcha
注册providers (config/app.php),在这个数组中的最后追加如下代码:
Mews\Captcha\CaptchaServiceProvider::class,
注册aliases (config/app.php),在这个数组中的:
'Cache' => Illuminate\Support\Facades\Cache::class,
下面增加
'Captcha' => Mews\Captcha\Facades\Captcha::class,
生成配置文件,在Composer命令行中输入如下命令:
php artisan vendor:publish
进入config/captcha.php文件,修改default数组 可以对验证码进行样式、数量、大小上的修改。
'default' => [
'length' => 5,
'width' => 100,
'height' => 34,
'quality' => 90,
],
页面中使用
<div class="row">
<input type="text" name="captcha" id="captcha" placeholder="captcha" value="" class="@error('captcha') is-invalid @enderror">
<img src="{{captcha_src()}}" style="cursor: pointer" onclick="this.src='{{captcha_src()}}'+Math.random()">
@error('captcha')
<div class="alert alert-danger">{{$message}}</div>
@enderror
</div>
重写validateLogin方法:
public function Test1(Request $request){
$data = $request->all();
$this->validate($request,[
'captcha' => 'required|captcha',
]);
if(!captcha_check($data['captcha'])){
return Response()->json(['code' => 201, 'msg' => '验证码有误']);
}
}
validation.captcha修改方式,对应的validation语言包添加
'captcha' => ':attribute 验证码不匹配',
发布时间:2023/03/15
发表评论