laravel 注册验证码

使用第三方扩展包 mews/captcha 作为基础来实现 Laravel 中的验证码功能

  • 使用composer安装扩展包
composer require "mews/captcha:~2.0"
  • 运行以下命令生成配置文件 config/captcha.php
php artisan vendor:publish --provider='Mews\Captcha\CaptchaServiceProvider'
  • 可以在config/captcha.php中修改验证码的长度、背景颜色、文字颜色等属性。

页面嵌入

  • 前端展示 —— 生成验证码给用户展示,并收集用户输入的答案
@if ($errors->has('captcha')) {{ $errors->first('captcha') }} @endif
  • 后端验证 —— 接收答案,检测用户输入的验证码是否正确
protected function validator(array $data)
{
        return Validator::make($data, [
            'name' => 'required|string|max:255',
            'email' => 'required|string|email|max:255|unique:users',
            'password' => 'required|string|min:6|confirmed',
            'captcha' => 'required|captcha',
        ], [
            'captcha.required' => '验证码不能为空',
            'captcha.captcha' => '请输入正确的验证码',
        ]);
    }

你可能感兴趣的:(laravel 注册验证码)